Non-destructive testing and imaging

ABSTRACT

A method of non-destructive testing includes non-destructively testing an object over a range of test levels, directing coherent light onto the object, directly receiving the coherent light substantially as reflected straight from the object, and capturing the reflected coherent light over the range of test levels as a plurality of digital images of the object. The method also includes calculating differences between pixel values of a plurality of pairs of digital images of the plurality of digital images, and adding the pixel value differences of the plurality of pairs of digital images to yield at least one cumulative differential image.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation-in-part of, and claims priority toU.S. patent application Ser. No. 10/659,466, filed Sep. 10, 2003, nowU.S. Pat. No. 6,934,018 issued Aug. 23, 2005 and a divisional of U.S.patent application Ser. No. 11/066,672, filed Feb. 25, 2005 both ofwhich are hereby incorporated by reference.

FIELD OF THE INVENTION

The present invention pertains to the field of Non-Destructive Testing(NDT) and its application to a variety of substrates and the ability toilluminate and capture reflected light efficiently from thesesubstrates. In particular the invention pertains to such testing oftires, and utilizes a computer to display image test data.

BACKGROUND OF THE INVENTION

For many years the standard practice for calibratingshearographic/holographic tire testing machines has been ASTM F1364-92.This test method describes the construction and use of a calibrationdevice for demonstrating the anomaly detection capability of aninterferometric laser imaging non-destructive tire inspection system. Atypical shearographic fringe pattern resulting from such testingtechnique is shown in FIG. 1.

As has been described in U.S. Pat. No. 6,433,874 the technique ofshearing interferometry, or shearography involves the interference oftwo laterally-displaced images of the same object to form aninterference image. Conventional shearographic methods require that afirst interference image (or baseline image) be taken while the objectis in an unstressed or first stressed condition, and anotherinterference image be taken while the object is in a second stressedcondition. Comparison of those two interference images (preferably bymethods of image subtraction) reveals information about the strainconcentrations and hence the integrity of the object in a single imagecalled a shearogram. FIG. 1 shows an image which is the direct result oftwo laterally-displaced images being obtained by an interferencetechnique. The images that are obtained are not to the scale of theanomaly in the tire. In addition very minute anomalies, those in theorder of 1.7 mm are not readily ascertainable from a shearogram such asthat shown in FIG. 1.

While some systems for shearography have an output such as the displayof computerized systems of the '874 patent, many of the systems utilizedare such that they have an output of highly sensitive film which isextremely costly and requires a special viewing device. Further, filmbased shearographic tire testing machines (and individual tire tests)are typically very expensive therefore a limited number are utilized inthe industry within individual plants.

The electronic shearography of the '874 patent is based upon theshearography described in U.S. Pat. No. 4,887,899 which describes anapparatus which produces an interference image by passing light,reflected from the test object, through birefringent material and apolarizer. The birefringent material splits a light ray into two raysand polarizing it makes it possible for light rays reflected from a pairof points to interfere with each other. Thus each point on the objectgenerates two rays and the result is an interference image formed by theoptical interference of two laterally displaced images of the sameobject.

There is a need for a tire testing technique that facilitates directmeasurement of anomalies in order for the anomalies to be quantified.

There is a need to obtain an output from tire testing equipment whichdoes not rely upon an interferogram or proprietary optics, therebymaking the output of such testing technique accurately describe andidentify the anomaly.

There is a need for a tire testing technique and apparatus which permitsthe utilization of coherent light and the reflection of such light to becaptured by inexpensive equipment and displayed using commonly availablecomputerized systems.

It is accordingly an object of the invention to provide a newtiretesting technique and apparatus which facilitates direct measurements,and a quantitative analysis or scalability of the anomaly in the tire.

It is an object of the present invention to provide a new tire testingtechnique and apparatus which does not rely upon an interferogram toaccurately describe and identify the anomaly.

It is an object of the present invention to provide a new tire testingtechnique and apparatus which permits the utilization of coherent lightand reflection of such light to be captured by inexpensive equipment anddisplayed using commonly available computerized systems which does notutilize laterally-displaced images but a single image of the anomaly asoutput.

SUMMARY OF THE INVENTION

An exemplary method of non-destructive testing includesnon-destructively testing an object over a range of test levels,directing coherent light onto the object, directly receiving thecoherent light substantially as reflected straight from the object, andcapturing the reflected coherent light over the range of test levels asa plurality of digital images of the object. The exemplary method alsoincludes calculating differences between pixel values of a plurality ofpairs of digital images of the plurality of digital images, and addingthe pixel value differences of the plurality of pairs of digital imagesto yield at least one cumulative differential image.

An exemplary computer-readable medium carries instructions to enable aprocessor to perform method steps of non-destructive testing. The methodincludes calculating differences between pixel values of a plurality ofpairs of digital images captured as coherent light directly receivedsubstantially as reflected straight from an object undergoingnon-destructive testing over a range of test levels, and adding thepixel value differences of the plurality of pairs of digital images toyield at least one cumulative differential image.

An exemplary method of creating a database of information from anon-destructive testing process of a plurality of objects is provided.The method includes creating a database record for each of the pluralityof objects, wherein the database record includes the followinginformation: at least one object identifier, at least one reference toat least one digital image, and at least one anomaly characteristicincluding at least one of anomaly quantity and anomaly size. The methodalso includes storing the database record for subsequent access.

An exemplary method of detecting an anomaly in a tire includes providinga source of coherent light, shining the light directly onto the tiresurface thereby generating a reflected light from the tire, andstressing the tire over a range of test levels. The method also includesproviding a reflected light receiving apparatus for receiving the lightreflected directly from the tire when the tire is in a stressed andunstressed condition, and capturing the reflected light over the rangeof test levels as a plurality of digital images of the tire. The methodadditionally includes calculating differences between pixel values of aplurality of pairs of digital images of the plurality of digital images,and adding the pixel value differences of the plurality of pairs ofdigital images to yield at least one cumulative differential image. Themethod further includes providing a processor which views and comparesimages of reflected light from the reflected light receiving apparatuswhen the tire is stressed and unstressed thereby ascertaining an anomalyin the tire and generates an output from the comparison, and displayingthe output from the processor using apparatus electronically connectedto the processor.

An exemplary anomaly detector apparatus is provided for detecting ananomaly in a tire. The apparatus includes a source of coherent light toshine the light directly onto the tire surface with the light beingreflected from the tire, a stressing apparatus to stress the tire over arange of test levels, a reflected light receiving apparatus forreceiving the light reflected directly from the tire when the tire is ina stressed and unstressed condition. The apparatus also includes aprocessor, which compares images of reflected light from the reflectedlight receiving apparatus when the tire is stressed and unstressedthereby ascertaining an anomaly in the tire and which generates anoutput from the comparison. The processor is adapted to capture thereflected light over the range of test levels as a plurality of digitalimages of the tire, calculate differences between pixel values of aplurality of pairs of digital images of the plurality of digital images,and add the pixel value differences of the plurality of pairs of digitalimages to yield at least one cumulative differential image. Theapparatus further includes a display apparatus electronically connectedto the processor for displaying the output from the processor.

An exemplary non-destructive testing system includes a non-destructivetesting apparatus to test an object over a range of test levels, a lightsource to direct coherent light onto the object, an imaging device todirectly receive light substantially as reflected straight from theobject and thereby capture a plurality of digital images of the objectover the range of test levels, and a memory for storing the plurality ofdigital images and for storing a computer-executable program. The systemalso includes an input device for receiving input from an operator, anoutput device for transmitting output to the operator, and a processorin communication with the imaging device, the memory, and the input andoutput devices. The processor is adapted to execute thecomputer-executable program to store the plurality of images in thememory, calculate differences between pixel values of a plurality ofpairs of digital images of the plurality of digital images, and add thepixel value differences of the plurality of pairs of digital images toyield at least one cumulative differential image.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other objects, features and advantages of this invention willbe apparent from the following detailed description, appended claims andaccompanied drawings in which;

FIG. 1 is a prior art shearogram obtained from a testing fixtureidentified in ASTM F 1364-92;

FIG. 2 is a schematic representation of the apparatus of the presentinvention;

FIG. 3A is a schematic drawing of the tire testing equipment where thetire is in an unstressed condition;

FIG. 3B is a schematic drawing of the tire testing equipment where thetire is in a stressed condition;

FIG. 4A is a legend for FIG. 4B. This legend serves to name the imagescaptured with the tire subjected to various levels during the sequenceof steps used in FIG. 4B;

FIG. 4B is a block diagram of the sequences of computations of acomputer to capture and process different images of the unstressed andstressed conditions as the typical stressing conditions are applied,such as an application of vacuum;

FIG. 5 is a typical output of the tire testing apparatus showing acalibration block used as the test object, and method of the presentinvention;

FIG. 6 is a perspective view of a portion of one embodiment of theapparatus of the present invention;

FIG. 6A is a perspective view of a portion of an alternative embodimentof the apparatus of the present invention;

FIG. 7 is top sectional view of the apparatus of FIG. 6;

FIG. 8 is a sectional view of FIG. 7 taken along lines 8-8 of FIG. 7;

FIG. 8A is schematic diagram of an imaging arrangement of the apparatusof FIG. 6;

FIG. 8B is a schematic diagram of an alternative imaging arrangement ofthe apparatus of FIG. 6;

FIG. 9 is a schematic block diagram of a presently preferred embodimentof a production system for non-destructively testing and inspecting asubstrate or product;

FIG. 10 is schematic block diagram of a presently preferred embodimentof a control module and related apparatus of the production system ofFIG. 9;

FIG. 11 is an organizational block diagram of a presently preferredembodiment of field inputs and outputs of a production machine of theproduction system of FIG. 9;

FIG. 12 is a software block diagram of a presently preferred embodimentof a software architecture of a differencing video system and substratedata collector used with the production system of FIG. 9;

FIGS. 13A through 13C represent a flow chart of a presently preferredembodiment of a method of operating the production system of FIG. 9;

FIGS. 14 through 18 are graphical user interface screen shots thatillustrate functionality of a human machine interface of thedifferencing video system of FIG. 12;

FIG. 19 is plan view of a camera position control pendant for use withimaging apparatus of the production system of FIG. 9;

FIGS. 20 through 28 are graphical user interface screen shots thatillustrate additional functionality of the human machine interface ofthe differencing video system of FIG. 12;

FIGS. 29 through 38 are graphical user interface screen shots thatillustrate functionality of the image processing software of FIG. 12;

FIG. 39 is a flow chart of a preferred image differencing routine,preferably used with the production system of FIG. 9;

FIG. 39A is a flow chart of an alternative image differencing routine,preferably used with the production system of FIG. 9;

FIGS. 40 through 44 are graphical user interface screen shots thatillustrate additional functionality of the image processing software ofFIG. 12;

FIG. 45 is a flow chart of a preferred image enhancement routine,preferably used with the production system of FIG. 9;

FIGS. 46 through 48 are graphical user interface screen shots thatillustrate preferred details of the image enhancement routine of FIG.45;

FIG. 49 is a flow chart of a preferred image analysis routine,preferably used with the production system of FIG. 9;

FIGS. 50 through 54 are graphical user interface screen shots thatillustrate preferred details of the analysis routine of FIG. 49;

FIG. 55 is a flow chart of a preferred image overlay routine, preferablyused with the production system of FIG. 9;

FIGS. 56 through 62 are graphical user interface screen shots thatillustrate preferred details of the image overlay routine of FIG. 55;

FIG. 63 is a block diagram of a software relationship between differenttables of a database and a human machine interface of the differencingvideo system of FIG. 12;

FIGS. 64 through 68 are graphical user interface screen shots thatillustrate functionality of the substrate data collector of FIG. 12; and

FIG. 69 is a block diagram of a software relationship between differenttables of a database with the substrate data collector of FIG. 12.

DESCRIPTION OF THE INVENTION Definitions

Anomaly is defined as a defect in a tire which can generally becharacterized as air trapped in a cured tire as a result of variationsin the thickness of the tire components; porosity and voids in the tire,a separation, an undercure of the tire, trapped air and bubbles; lowinterply adhesion, poor cord adhesion, bare wires, broken cords, andmachine building errors.

Bitmap is a data file or structure which corresponds bit for bit with animage displayed on a screen, preferably in the same format as it wouldbe stored in the display's video memory or alternatively as a deviceindependent bitmap. A bitmap is characterized by the width and height ofthe image in pixels and the number of bits per pixel which determinesthe number of shades of grey or colors it can represent.

Coherent light is a light having a single wavelength, frequency andphase. It is also radiant electromagnetic energy of the same, or almostthe same wavelength, and with definite phase relationships betweendifferent points in the field.

Differenced or also known as delta frame means an animation frame thatcontains only the pixels different from the preceding key frame.

Diffuser is an apparatus which transmits light through a translucentmaterial which permits the distribution of incident light onto the tireto be tested.

Interferometer is an instrument in which light from a source is splitinto two or more beams which are subsequently reunited after travelingover different paths and display interferences.

Laser is a device that produces a beam of coherent or monochromaticlight as a result of photon-stimulated emission. Such beams have asingle wavelength and frequency. Materials capable of producing thiseffect are certain high period crystals such as ruby, yttrium garnet,metallic tungstates or molybdates doped with rare earth ions;semi-conductors such as gallium arsenide, neodymium-doped glass; variousgasses, including carbon dioxide, helium, argon, neon, and plasmas, andthe like.

Laterally-displaced is a term that means, what appears to be a double orside by side image but is actually a positive and negative opticalinterference of a single anomaly. Further laterally means side by sidebut depending on the orientation of the optical element in the devicecould be any angle.

In this form of Non-Destructive Testing (NDT), non-destructive means atesting technique where the object to be tested is subjected to astressing element and at the end of the testing the object is revertedto substantially its original condition.

The processor is a device or software, usually a central processing unit(CPU); it can also be a program that transforms some input into someoutput such as a computer or linkage editor; it facilitates thecomparisons of images; it may be a hardwired device using embeddedinstructions to perform the comparisons.

Stressing element means an element that is used to apply stress orstrain to an object to cause a change from its original condition. Suchstressing can take the form of the application of a vacuum, theapplication of light, the application of a gas, the application of amechanical force to permit flexing, the application of acoustical soundthereby vibrating the tire, or some other vibrating technique, orapplication of heat, or the like.

Reference is made to cop-pending U.S. patent application Ser. No.11/067,256, Attorney Docket Number 7248.3008.001, entitled A PLURALITYOF LIGHT SOURCES FOR INSPECTION APPARATUS AND METHOD, filed Feb. 25,2005, now U.S. Pat. No. 7,187,437, which is hereby incorporated byreference herein.

In general, the apparatus and method of the present invention can bedescribed as follows:

The inside surface of the tire is a diffuse reflective surface, verses amirror which is a specular reflective surface. A speckle pattern isvisible on diffuse rather than specular reflective surfaces that isilluminated with laser light. These reflections from the anomalousregions change during the stressing cycle as the surface deforms. Withmultiple images captured by the camera during this cycle, the computercan process the image information using a software algorithm such asthat described in FIG. 4A and FIG. 4B. In the present invention lightdoes not pass through a birefringent material or a shearing opticmaterial.

A typical test setup for the present invention is described as follows:The tire to be inspected is placed horizontally on a plate within avacuum chamber. A commonly available industrial digital camera sits inthe center of the tire so as to view a region of the inside surface ofthe tire such as camera model LU-205C available from LumeneraCorporation of Ottawa, Ontario, Canada (Lumenera.com) which is a color2.0 megapixel having SVGA (800×600) sub-sampling which provides 40frames/sec. The digital camera uses a commonly available lens to set thefocus of the reflected speckle pattern image of the tire region on thedigital image sensor. Preferably, the lens is adjusted so that the imageis out of focus. The lens is preferably turned as far as possibletowards a “near” setting of the lens (e.g. counter-clockwise whenlooking at the camera and lens).

A cable connects the camera to a computer. Image information is sentthrough this cable to the computer memory. Images from memory can beviewed on the computer display in near real-time, i.e., as the imagesare captured and processed by the equipment.

Generally each image will be stored in memory as a black/white bitmapfile whereby 8 bits are used to store the gray-scale levels of eachimage sensor picture element, or pixel, value. Likewise, the imagesviewed on the computer display will be of the form of 8-bit, gray-scale,bitmap display images corresponding to the bitmap images, as the imagesare stored in memory. There are 2⁸=256 (from 0 to 255 decimal) possiblegray-scale 8-bit values associated with each pixel of the displayedimages. The decimal value, “0,” as it directly represents the gray-scalelevel of individual display image pixels, corresponds to a black pixel,the darkest gray-scale pixel. Similarly, the decimal value, “255,”represents the lightest gray-scale pixel, which is “white.” Theremaining numeric values between 0 and 255 represent a progression ofgray levels from dark to light.

Note that two digital images that are exactly equivalent will have thesame numeric values, from 0 to 255, for every image pixel.

Conversely, two digital images that are not equivalent will not have thesame numeric values for every image pixel. The arithmetic differencebetween every corresponding image pixel of two exactly equivalentdigital images will be 0. This means that the difference image obtainedfrom differencing two equivalent digital images will be displayed as atotally black image. The difference image obtained from differencing twodissimilar digital images will not be a totally black image. The imagedifferencing function provides a tool for observing slight changesbetween two digital images.

In one embodiment the stressing element is the use of vacuum. Thespeckle pattern associated with a given region of a tire will changewith very small deformations of the tire surface. Such surfacedeformation occurs when the pressure drops in the vacuum test chamberand the air inside of a ply separation expands creating a deformation onthe interior tire surface.

Practically speaking the two speckle pattern images of a tire surfaceregion where there exists an underlying localized ply separation will bedifferent if the two images are taken at different vacuum levels. Alsothe images will only, or at least ideally, be numerically different inthe deformation region associated with the ply separation. Thedifference image of the two images will be black everywhere except thearea where the deformation occurs. In the deformation region of theimage there will be grey pixels of various shades. The deformationregion is visible in the differenced image.

In one embodiment of the test method, six digital images of a laserilluminated interior surface region of a tire are taken with each imagetaken at one-of-six vacuum levels. The laser is a gallium arsenide laserhaving a wavelength of 808 nm (nanometer), model UH5-200 808 supplied byWorld Star Tech. of Toronto, Ontario, Canada (worldstartech.com). Thefirst image will be taken at 0.0″ Hg (atmospheric pressure). This firstimage will be called the base image. The five remaining images will betaken respectively at 0.5, 1.0, 1.5, 2.0, and finally 2.5″ Hg. The siximages will be stored in computer memory. Next five differenced imageswill be obtained using the base image always as one of the two images tobe differenced. The other images used to make the five differencedimages will be the five non-base images. Each of the five differencedimages will be processed to filter out noise and increasecontrast/brightness. Other processing may also be used. Any combinationof available or custom image processing software including: auto anomalydetection, special effects, filtering, noise reduction, sharpening,dilation, colorization, positive or negative or the like. The fiveprocessed images will be added together in an accumulative fashion.After each addition of two images, the new image formed by the additionwill be processed. The final image will be used for evaluation for thegiven tire region. There will be a plurality of inspection regionsinspected using the preferred test method in order to evaluate thecomplete tire.

It is to be appreciated that a display is meant to cover variedelectronic output of the images whether visible to the naked eye or notand includes a screen display, hard copy or an electronic image. Theelectronic image may be used by a computer to determine whether the testobject passes or fails testing criteria without actually displaying theimage to the naked eye or optionally without operator intervention.Turning now to the drawings in the case.

FIG. 1 is a prior art shearogram obtained from the testing fixtureidentified in ASTM F 1364-92. For ease of readability, FIG. 1 is a blackon white image as opposed to a white on black image which is one outputfrom the ASTM test. It should be noted that the anomalies in that outputare laterally-displaced images.

FIG. 2 is a schematic diagram of the anomaly detector apparatus of thepresent invention. In general, the anomaly detector apparatus 10 isencased within a vacuum chamber 12 which is indicated as having a vacuumoutlet 14. The tire 16 can be placed on a carrying member (not shown)and can be placed on a motorized conveyer (not shown) outside the vacuumchamber and moved into the vacuum chamber. Such techniques are wellknown in the art. The anomaly detector apparatus is comprised of thelaser 20 mounted on a shaft 18 which can be rotated as well as movedforwards and back in the vacuum apparatus. The coherent light 22 emittedfrom the laser 20 reflects on the inner surface 24 of the tire at points26 as well as numerous other points. The coherent light 22 from thelaser 18 is passed through a diffuser 30 which facilitates the spreadingof the light across the portions of the tire substrate 24 to be viewed.The diffused light 27 is reflected off of the points 26 in a speckledfashion which are reflected off of the substrate 24 as shown by beams32. The light is speckled and is captured in a camera 40. Preferably,the camera or cameras are a CCD variety well known in the industry as acharged coupled device. Other photosensitive detection equipment may beutilized. The camera can be called an image sensor, namely, it sensesthe speckled image 32 from the application of direct laser light ontothe tire surface 24.

The diffuser is a holographic diffuser of 25 mm diameter with relativelyhigh diffuser transmission efficiency. Alternatively the diffuser may beopal diffusing glass having a diameter of 25 millimeter, both availablefrom Edmund Industrial Optics of Barrington, N.J.

The camera and the computer are electrically connected through wire 42.It is to be appreciated that while electrical current may be necessaryfor the operation of the laser and the camera, the output from thecamera could likewise be supplied to the computer 44 by well knownwireless communication techniques represented by parallel lines 43. Thecomputer hard drive 44 with a video card is attached to a monitor 46 fordisplay of the speckled output 32.

It is to be appreciated that the coherent laser light that is diffusedonto the substrate 24 is reflected off of the substrate and thecapturing is a direct capture of the reflections 32 by the CCD 40. Thisis unlike that which is utilized in prior art shearograms orinterferometry which use an optical shearing device. The direct outputof the device shown in FIGS. 2, 3A and 3B is that shown in FIG. 5. It isto be appreciated that the output of FIG. 5 can be either black on whiteor white on black depending on how one wishes to view the desiredoutput. Because the image is captured by an image sensor, each pixel ofthe image can be identified or stored in digital form, as such, one canassign colors to different portions of the image, besides a white orblack color thereby enhancing the image.

In a similar fashion, the operation of the equipment is shown in FIGS.3A and 3B where there are larger number of diffused rays 27 at differentpoints 26. The light 27 from the diffusing element 30 is dispersed as isshown in FIGS. 2, 3A and 3B.

After the tire is subjected to a stressing element such as applicationof a vacuum, the application of light, the application of gas, theapplication of a mechanical force to permit flexing, the application ofacoustical sound thereby vibrating the tire or some other vibrating orheat application technique, the result is the movement of the tiresubstrate 24 which in turn causes a reflection of the laser light frompoints 26. FIG. 3B shows in an exaggerated fashion the variation fromthe smooth surface 24 of the tire to an expanded version or deformation24 that is depicted. The laser light therefore is deflected at adifferent angle and therefore is shown as reflected speckled light 32which creates images that are captured by the CCD camera 40.

The electrical cable 42 is shown as having parallel marks 43 to indicatethat there may not necessarily be a direct wire for passing the imagesfrom the camera to the computer monitor but may be done by a wirelesstechnique. The capturing of images on a camera is well known in the art.It can take the form of animation of images, which techniques are wellknown.

To graphically explain how the animation occurs reference can be made toFIGS. 4A and 4B. FIG. 4A shows a legend whereby images that are capturedat various vacuum levels are given names for reference purposes. FIG. 4Bshows the sequence of steps used for evaluating one region of the insidesurface of a tire. The test sequence begins at the box designated as 50and ends at step 68. At 51 the base image of the tire region is capturedwhile the tire is unstressed and subjected to 0.0″ Hg (atmosphericpressure). From the legend shown in FIG. 4A, this image is designated0_(—)0. This base image, referenced as 0_(—)0, is stored as image “A”during step 51. For consistency, at box 52, the base image isdifferenced with itself to provide a black image that is displayed asthe first image of the animation. This image is stored at 53 as “AA”. Itcan be appreciated that a black image could have been produced insoftware without actually imaging the tire region, however, the baseimage “A” is captured since it is used in subsequent steps of the testsequence. After image AA is displayed at 54 the next image is capturedat step 55 while the tire is subjected to 0.5″ Hg vacuum. This image,“0_(—)5,” is stored as “B” in step 55. At 56 the image, B, isdifferenced with the base image, A, producing image, “AB,” which isstored in step 57. AB is then displayed at 58 and AB serves as the2^(nd) image in the animation sequence. At step 60, as well assubsequent steps, 63, 64, 66, the previously displayed image is added tothe image formed in the immediately preceding steps. For example, atstep 60, the previously displayed image is AB and the image added tothis image is the just-formed image, “AC” stored at step 59. The newlyformed image is stored as “A_C” at step 61. A_C is then displayed atstep 62. During the course of the test, images are captured at 0.5″ Hgincrements with the final image, “2_(—)5,” being captured with the tiresubjected to 2.5″ Hg vacuum (step 65). At 67 the final image in theanimation sequence is displayed. The Images obtained during the tiretest can be the subject of a printed output as shown in FIG. 5. Arepresentative of such a technique is shown at FIG. 5 where theprocedure, as followed in the ASTM testing technique described above,was utilized, except the apparatus of FIGS. 1 and 2 were used in placeof an interferometer technique.

It is also to be understood that even though FIGS. 4A and 4B. show thevacuum cycle from 0.0″ Hg. to 2.5″ Hg, any combination of vacuum levelsor set points increasing or decreasing may be used. As an example from5.5″ Hg. to 1.0″ Hg.

In another embodiment of the invention, an assembly 104 including aplurality of reflected light receiving apparatus for receiving the lightreflected is utilized such as that shown in FIGS. 6-8A. In thisembodiment, the anomaly detector apparatus 10 is modified by redesigningthe assembly of the source of coherent light 18 to better facilitate thelight distribution on the inside of the outside of a hollow toroidalsurface i.e. the inside of a tire, and the light receiving apparatus 40to receive the light from the inside of the outside of a hollow toroidalsurface.

In FIGS. 6-8A, there are multiple lasers 100, which are locatedsubstantially adjacent to the light receiving apparatus 102 preferably acamera. The camera or cameras as shown in FIGS. 6-8 are four in numbercircumferentially evenly located about a circle sitting atop a mountingplate 112 which moves up and down whenever a horizontally placed tire isinserted into the testing apparatus 10. In one embodiment a CCD camera102 employed is LUMENERA camera LU105M supplied by Lumenera Corporationbecause of it's thin cross section and the need to have severalcomponents back to back in a small space inside the test object (tire).

It is to be appreciated that the number of receiving apparatus 102, andthe number of lasers 100 and the number and style of light shapingdiffusers can vary depending upon the size of the substrate to bestudied, such as 2 to 8 cameras, preferably 4-6. As can be seen fromFIG. 6, the lasers point in a direction both upwards, downwards andoutwards or could be any combination of angles to suit the shape of thetest object through a light shaping elliptical diffuser (not shown)fitting within retaining member 106. As can be seen from FIGS. 6 and 7,the sources of coherent light 100 are placed on each side of the lightreceiving apparatus 102. Preferably the angle of the source of thelasers to the axis of the light receiving apparatus can vary from 10 to45 degrees, preferably 20 to 45 degrees (as best seen from top view ofFIG. 7).

It is likewise to be appreciated that to improve the light distributionto be received by the light receiving apparatus, the number of coherentlight sources 100 can be increased from 2 to 8 per light receivingapparatus and that the light source can have an elliptical pattern. Forexample, FIG. 8A illustrates an imaging arrangement including the camera102 and a plurality of the elliptical diffusers 120. Coherent lightpasses through each diffuser 120 and creates a composite illuminatedarea 125 composed of smaller overlapping elliptical shaped areas. Inturn, the camera 102 captures light reflected from the viewed area 126of the object that is completely illuminated. FIG. 8B illustrates analternative imaging arrangement including the camera 102 and theelliptical diffuser 120. Coherent light passes through the diffuser 120and creates an elliptical shaped illuminated area 125 on an object. Inturn, the camera 102 “views” or captures light reflected from a viewedarea 126.

The elliptical pattern whether it is one or multiples are more conduciveto illuminating a rectangular shape which is the output of a camera andthe shape of a computer display monitor. The rectangular shape commonlyrepresents an aspect ratio of width to height that in this case ispreferably five to four. Additionally another unique feature of thisinvention is to use the raw rectangular output of the laser to theadvantage for an elliptical output. Most laser diodes produce as outputa rectangular shaped form of light and then the light is collimated witha lens to form a gaussian mode (TEM₀₀) or round beam. Because a tirequadrant in this case (typical) is 90 deg, the sectional view is widerthan tall, and because a camera has an output that is wider than talland a computer monitor has a display that is wider than tall and a rawlaser output is rectangular, the laser is positioned so that the outputis wider than tall utilizing the available light energy efficiently. Thecollimating lens is removed from the laser and replaced with anelliptical light shaping diffuser from Physical Optics Corporation ofTorrance, Calif. For this case the output angle of the diffuser is 95deg. wide and 35 deg. tall but could be any angle/angles thatefficiently illuminates the surface area to be tested. FIGS. 6-8indicate that there are four light sources per light receiving apparatus102.

As can be seen from FIGS. 6-8, the anomaly detector apparatus orassembly 104 is comprised of a movable support structure 110, whichmoves up and down, with a pair of plates 112 and 114. Between the plates112 and 114 are the light generating and the light receiving apparatus,including a plurality of clusters of light sources 100 and lightreceiving apparatus 102, such as a digital camera. The top plate 114 hasfour clusters between the top and the bottom plate wherein the clustersare secured in place by bolts 116. The diffuser retainer 120 is held inplace by a plurality of screws 122.

As shown in FIG. 6A, it can also be appreciated that any of thecomponents, i.e. light generating and the light receiving apparatus 100,102, can be moveable in and out or tip as a group or independently for abetter view of the substrate to be tested. Alternatively, the components100, 102 may be moved in and out or tip as a group or independently inmicro motion to increase the ability of each light sensing sensor in thecamera to view one or more reflected laser speckles.

FIG. 6A illustrates an alternative anomaly detector apparatus orassembly 104′ including a base plate 112′ having a plurality ofvertically extending and radially or horizontally translatable uprights128 mounted thereto via a standard guide or slide arrangement as shown.Any suitable pillow block and guide rail combination, or the like, maybe used to mount the uprights 128 to the plate 112′. The uprights 128are preferably translated using an electromechanical linear actuator 130including a threaded shaft 132 extending through a threaded motorassembly 134. The motor assembly 130 is preferably a Portescap 40 serieslinear actuator, available from Danaher Motion of West Chester, Pa. Aradially inboard end of the shaft 132 is preferably affixed in anysuitable manner to a center support 150, which is fixed to the plate112′ in any suitable manner. The center support 150 includes a passage152 extending vertically therethrough for communicating power andcontrol wires (not shown) for connection to the motor assembly 134.Portions of the motor assembly 134 rotate to translate the upright 128back and forth in a horizontal or radial direction. Accordingly, thelight sources 100, light receiving apparatuses 102, and diffusers 120are independently translatable.

Retaining members 106′ are pivotably mounted to respective upper ends ofthe uprights 128 to provide the tipping or tilting functionalityreferred to above. Accordingly, other electromechanical linear actuators140, including threaded shafts 142 and motor assemblies 144, are mountedto respective sides of the uprights 128 via mounting brackets 146. Themotor assembly 130 is preferably a Portescap 20 series linear actuator,available from Danaher Motion of West Chester, Pa. The threaded shafts142 are coupled to couplers 148, which are coupled to pivot arms 149that, in turn, are coupled to the pivotable retaining members 106′.Portions of the motor assembly 144 rotate to thread, or linearlydisplace, the threaded shafts 142 therethrough to move the pivot arms146 and thereby pivot, tilt, or tip the retaining members 106′.Accordingly, the light sources 100, light receiving apparatuses 102, anddiffusers 120 are independently pivotable.

To graphically explain how the animation occurs for the apparatus ofFIGS. 6-8, reference can be made to FIGS. 4 a and 4 b and the associateddescription above, and/or to FIGS. 29 through 62 and the associateddescription below.

Software that is utilized to process the speckled image and to displayit can be any commercially available image processing software such asPAINT SHOP PRO V. #8.0, supplied by Jasc Software Inc., of Eden Prairie,Minn. Other software that can be used is LabView available from NationalInstruments of Austin, Tex. or custom written software using an imaginglibrary from the likes of MontiVision of Breiholz, Germany.

FIG. 5 is a representative example of any one of images AA through A_Fwhen the ASTM procedure is utilized except the apparatus of FIGS. 1 and2 were used in place of an interferometer technique. FIG. 5 shows animage of an ASTM calibration device where the image is a reflected imagefrom the substrate of the calibration device that has been stressed andthe laser light has been diffused directly onto the substrate and thereflection of a diffused light is captured as a speckled image by thecamera and is stored in the computer memory which in turn can beutilized to generate the output of FIG. 5. It should be noted that theoutput is characterized as a scaleable representation of the anomalyobtained from the diffused beam of coherent light diffused onto thetire. It should be noted that the image of the reflected light sourcecan be characterized as a scattered speckle reflection. It is to beappreciated that the tire may be in an unstressed and stressed conditionor multiple stressed conditions. The computer can compare and displayall of the conditions or a portion of them. The invention includes allsuch comparisons in the completed output form. The output from FIGS. 6-8can likewise generate the image of FIG. 5.

The utilization of the present technique facilitates quantitativemeasurement of the anomaly. Alternative to a quantitative determinationone can assess the extent of the anomaly by scaling the anomaly with theimage that is shown on the computer monitor or is generated in theoutput such as FIG. 5. Prior art techniques did not permit suchmeasurements or scaling of the anomaly to ascertain the extent of ananomaly in a tire.

The invention described herein in a preferred embodiment does notutilize mirrors for movement of the light. However it is to beappreciated that mirrors may be used to allow the camera to view areasnormally inaccessible, depending on the light source, the camera, thediffuser, the test substrate and the number of images to be taken of thesubstrate. Mirrors may be utilized under particular desired testingtechniques and conditions.

The application of the apparatus and method of the present applicationpertains to a wide variety of substrates that can be stressed, allowingthe surface topography to change during stressing. Including but notlimited to, any rubber product that has one, or more than one of thefollowing components i.e. reinforcements, backers, strengthening ribs,mounting brackets, cores, honeycombs. These rubber products may be tires(automobile, truck, motorcycle, tractor, construction equipment andaircraft), hoses (radiator, heater, fuel, water, air, hydraulic oil andindustrial, belts (fan, power transmission, timing, conveyer such as formining, and industrial), sheets (pump diaphragms, tank bladders andgaskets), and the like.

A variety of laminated substrates of various plastic materials may beused including thermoplastic, thermoset materials, elastomeric andadhesive materials as well as a wide variety of composites includingfiber reinforced composites, metal glass fiber laminates, honeycombstructures, glass or carbon fiber reinforced plastics, and the like. Thesubstrates to be tested include a wide variety of vehicle parts such asfor cars, trucks, off-road vehicles, aircraft, farming equipment and thelike. One can also detect an anomaly in other substrates, such as,honeycomb aluminum panels and other composite panels as well as carbonfiber reinforced plastic specimens. Other multilayer materials orlaminates can be reviewed such as metal ceramic, metal plastic and metalglass fiber compound materials such as those used in the electronicindustry, aircraft engine parts or parts in the aeronautics industry.

It is to be appreciated that while the drawings show the interior of atire, (a cross section of the inside of the outside wall of a toroid), aplurality of any of the substrates can be reviewed by having substrateholders for the substrates. Also the wavelength of the light sourcewhich is utilized can vary, such as, visible light (about 400-700nanometers) to near visible or greater than visible light. The type ofdiffuser material including the shape and the angle of the output mayalso vary.

Low Cycle Time NDT System, Method, and Software

In general, FIGS. 9 through 69 illustrate other presently preferredembodiments and aspects of a system, method, and software fornon-destructively testing and inspecting a substrate or object. Those ofordinary skill in the art will recognize that the term substrate isinterchangeable with the terms object, product, article, material,structure, and the like. Many features of these embodiments are similarin many respects to the embodiments described in FIGS. 2 through 8above, which description is incorporated by reference herein. In anycase, the below-described system and method are preferably capable ofcarrying out the previously described methods of FIGS. 2 through 8 on asubstrate or object, such as a tire, for a full 360-degree view within arelatively fast cycle time, such that testing every tire off of a tireproduction line is more practical than ever before. It is alsocontemplated that the below-described production system and method couldalso be adapted to carry out the previously-described method on anydesired product, object, or substrate, and is not limited to just usewith tires.

System

FIG. 9 illustrates a schematic block diagram of a presently preferredembodiment of a testing and inspection production system 200 including apresently preferred embodiment of a testing machine 202 and relatedinspection apparatus of the production system 200 that will be describedherein below. The machine 202 is preferably coupled to a system controlmodule 300, which will be described in further detail herein below.

The machine 202 generally includes a base table 206 that is supported byany suitable machine framing (not shown) with vibration isolation (notshown) interposed therebetween. The vibration isolation may include fourpneumatic leveling boots, wherein three of the boots include associatedupstream leveling valves and flow control valves and a fourth boot is influid communication downstream of one of the other three valves withoutany upstream leveling or flow control valves. The base table 206provides support for a pallet 208, which supports an object such as atire T. The pallet 208 is preferably raised and lowered by one or moreair cylinders 210 controlled by one or more valves 212, which aresupplied with shop air as depicted by the arrow and may be controlled bythe system control module 300 or by a separate machine control module(not shown) that is in communication with the system control module 300.It is contemplated, however, that all or some of the machine functionscould instead or additionally be controlled by the system control module300, which may be in wireless or hardwired electrical communication withthe system control module 300 as shown.

Material handling devices are preferably provided to carry the pallet208 and tire T. An inbound conveyor 216 conveys the pallet 208 and tireT to a stop 218 that is actuated by a pneumatic valve 220 and thatsuitably locates the pallet 208 with respect to the table 206 and to aproximity sensor 222 that senses presence (or absence) of the tire Tand/or pallet 208. The inbound conveyor 216, stop 218 and valve 220, andproximity sensor 222 are communicated to the system control module 300.An outbound non-anomalous conveyor 224 and an outbound anomalousconveyor 226 are in electrical communication with the system controlmodule 300 and are provided downstream of the table 206 to carry thepallet 208 and tire T off of the table 206.

An air-tight vacuum environment is provided by the following apparatus.An upper dome 228 is lowered into sealing engagement with the topsurface of the table 206 by a lift arm 230, which is preferably actuatedby a linear displacement device such as a powered screw 232, which isdriven by a stepper motor 234 that communicates with the system controlmodule 300. A lost-motion coupling, or decoupler mechanism, ispreferably disposed between the upper dome 228 and the lift arm 230 tohelp prevent the lift arm 230 from inadvertently damaging the upper dome228 and to enable the upper dome 228 to locate squarely against the topof the table 206 and to eliminate the transmission of vibration betweenvibration isolated components and non vibration isolated components. Alower dome 236 is maintained in sealing engagement with the bottomsurface of the table 206 to complete a sealed environment between thedomes 228, 236. A vacuum system 238 is provided in communication withthe sealed environment through the lower dome 236. The vacuum system 238preferably includes an air-driven vacuum pump 240 that is incommunication with the lower dome 236 and that receives shop air througha regulator-filter device 242 and a control valve 244, which is drivenby a solenoid 246 in communication with the system control module 300. Asolenoid-actuated exhaust valve 248 of the vacuum system 238 is inpneumatic communication with the lower dome 236 and in electricalcommunication with the system control module 300.

Finally, the production system 200 preferably includes an inspectionimaging system, which preferably includes an imaging head 250,preferably like that described above with respect to FIGS. 6-8. Theimaging head 250 preferably includes electronic imaging devices 252 likecameras and laser light sources, and servos 254 for adjusting theangles, and horizontal and vertical positions of such electronic imagingdevices 252. The imaging head 250 is preferably advanced from a positionunder the table 206 to a position above the table 206 and within thetire T by a suitable powered screw 256 and stepper motor 258. Thestepper motor 258 is preferably communicated to the system controlmodule 300 and the imaging devices 252 and servos 254 are preferablycommunicated to the system control module 204. A camera position controlpendant 260 is also provided in communication with the servos 254 of theimaging head 250 for manually controlling positioning of the imagingdevices 252.

Controls

FIG. 10 shows one example of the system control module 300 including adata processing system or computer 302 and related apparatus toimplement method or apparatus aspects of the present disclosure. Thecomputer is preferably a personal computer (PC), for example, a DELL 470desktop workstation.

But for purposes of this disclosure, the system control module 300 mayinclude any instrumentality or aggregation of instrumentalities operableto compute, classify, detect, display, handle, originate, manipulate,manifest, process, record, reproduce, receive, retrieve, switch, store,or utilize any form of data, information, intelligence for academic,business, production, scientific, or other purposes. Although describedin connection with an exemplary computing system environment, includinga computer, the production system and method are operational withnumerous other general purpose or special purpose computing systemenvironments or configurations. The computing system environment is notintended to suggest any limitation as to the scope of use orfunctionality of the production system or method. Moreover, thecomputing system environment should not be interpreted as having anydependency or requirement relating to any one component, or combinationof components, illustrated in the exemplary operating environment.Examples of well known computing systems, environments, and/orconfigurations that may be suitable for use with the invention include,but are not limited to, personal computers, server computers, hand-heldor laptop devices, multiprocessor systems, microprocessor-based systems,set top boxes, programmable consumer electronics, personal digitalassistants, mobile telephones, network PCs, minicomputers, mainframecomputers, distributed computing environments that include any of theabove systems or devices, and the like.

The computer 302 is responsible for at least some, if not all, controlof the testing machine 202 of FIG. 9. For example, the computer 302 isresponsible for receiving imaging input, carrying out image processingand data analysis and management, and transmitting imaging output. Tofacilitate such functionality, the computer 302 has a processor 304, aninternal memory 306, an external memory interface 308, an input deviceinterface 310, an output device interface 312, a network interface 314,a machine input/output interface 316, and a communications module 318.

The communications module 318 may be any type of suitable moduleincluding a system bus, which couples the various above-described systemcomponents or modules. The system bus 318 may provide for datatransmission internally between each of the elements in the computer 302and externally between the internal elements of the computer 302 and anyother elements external of the computer 302. The system bus 318represents one or more of any of several types of bus structures,including a memory bus or memory controller, a peripheral bus, anaccelerated graphics port, a processor or local bus using any of avariety of bus architectures, and the like. By way of example, and notlimitation, such bus architectures include Industry StandardArchitecture (ISA) bus, Micro Channel Architecture (MCA) bus, EnhancedISA (EISA) bus, Video Electronics Standards Association (VESA) localbus, Peripheral Component Interconnect (PCI) bus also known as Mezzaninebus, and the like.

The processor 304 may be configured to provide control logic thatprovides the functionality for the production system. In this respect,the processor 304 may encompass one or more processing units,controllers, microprocessors, micro-controllers, application specificintegrated circuits (ASIC), complex programmable logic devices (CPLD),field programmable gate arrays (FPGA), any combinations of theaforementioned, and the like. The processor 304 may be interfaced withthe internal memory 306, which is a medium configured to provide atleast temporary storage of data and/or computer software orcomputer-readable instructions that provide at least some of thefunctionality of the production system and that may be executed by theprocessor 304. As used herein, the term processor also includes anyancillary devices such as clocks, power supplies, and the like.

The internal memory 306 includes computer readable storage or media inthe form of removable and/or non-removable, volatile memory 320 and/ornon-volatile memory 322. Exemplary volatile memory 320 may includerandom access memory (RAM), static RAM (SRAM), dynamic RAM (DRAM), andthe like, for running software and data on the processor 304. RAMtypically contains data and/or program modules that are immediatelyaccessible to and/or presently being operated on by the processor 304.By way of example, and not limitation, the volatile memory 320 mayinclude an operating system 324, application programs 326, other memorymodules 328, and data 330.

Exemplary non-volatile memory 322 may include read only memory (ROM),erasable programmable ROM (EPROM), electrically erasable programmableROM (EEPROM), dynamic read/write memory like magnetic or optical disksor tapes, and static read/write memory like flash memory, for storingsoftware and data. A basic input/output system (BIOS) 332 is typicallystored in ROM for containing basic routines that help to transferinformation between elements within the computer 302, such as duringcomputer boot-up.

The computer 302 may also include other removable/non-removablevolatile/non-volatile data storage or media. For example, a massexternal storage read/write device/module 334 is shown in the exemplaryform of a dynamic read/write hard disk drive that reads from or writesto non-removable, non-volatile magnetic media. Also, a dynamicread/write device/module 336 such as a magnetic or optical drive thatreads from and writes to a removable, non-volatile device 338, such as amagnetic floppy disk, magnetic tape cassette, digital versatile disk,digital video tape, optical disk like a CD-ROM, or other optical media.Moreover, a static read/write module 340 may be used in the exemplaryoperating environment for use with a static read/write device 342including, but not limited to, a flash memory card, integrated circuitchip, and the like.

The memory media/modules discussed above enable storage andcommunication of computer readable instructions, data structures,program modules, and other data for the computer 302. For example, themass storage device 334 is illustrated as storing an operating system344, application programs 346, other program modules 348, and programdata 350. Note that these components may either be the same as ordifferent from the operating system 324, application programs 326, otherprogram modules 328, and data 330 of the internal memory 306. Theoperating system 344, application programs 346, other program modules348, and data 350 are illustrated as discrete blocks and given differentnumbers here to illustrate that, at a minimum, they are differentcopies. It is recognized, however, that such programs and componentsreside at various times in different storage media associated with thecomputer 302, and are preferably executed by the processor 304 of thecomputer 302. Computer programs may be installed or loaded into asecondary memory of a computer such as the mass storage device 334,dynamic storage device 336, or static storage device 338. Upon executionby the processor 304, such computer programs may be loaded at leastpartially into a primary memory such as the internal memory 306. Anysuitable non-volatile memory interface 308 may be used to connect themass storage device 334 and other memory modules 336, 340 to the systembus 318.

User interface selection devices, or input peripheral devices, such as apointing device 352 (e.g., a mouse, trackball, pen, touch pad, or thelike), keyboard 354, modem 356, and the like, may be used to entercommands and information into the computer 302. Although expedientlyshown within the computer block, those of ordinary skill in the art willrecognize that the peripheral devices are actually external device withrespect to the computer. Other input devices (not shown) may include amicrophone, joystick, satellite dish, wireless communication device,scanner, or the like. The input interface 310 preferably connects theabove described input devices, and possibly other input devices, to theprocessor 304 preferably via the system bus 318, but may be connected byother interfaces and bus structures, such as a parallel port, UniversalSerial Bus (USB), infrared device, or the like.

Output peripheral devices such as a printer 358, a monitor 360, or othertype of display device or other peripheral device such as speakers (notshown), and the like, are also connected to the system bus 318 via theoutput interface 312, which may be any suitable printer, video, etc.,type of interface. The monitor 360 is preferably a touchscreen displayavailable from Xycom Automation of Saline, Mich. Although expedientlyshown within the computer block, those of ordinary skill in the art willrecognize that the peripheral devices are actually external device withrespect to the computer.

As used herein, the term interface broadly means any suitable form ofelectronic device or adapter, or even a software module or adapter,which enables one piece of equipment to communicate with or controlanother. Any of the interfaces disclosed herein may conform to anysuitable protocols such as ethernet or field buses such as Profibus,Interbus, Devicenet, RS-232, parallel, small computer system interface,USB, wireless protocols such as Bluetooth, infrared, and the like, andany other suitable input/output (I/O) protocols. Moreover, an interfacein the context of a software architecture includes a software module,component, code portion, or other sequence of computer-executableinstructions. Such an interface includes, for example, a first moduleaccessing a second module to perform computing tasks on behalf of thefirst module. The first and second modules include, in one example,application programming interfaces (APIs) such as provided by operatingsystems, component object model (COM) interfaces (e.g., for peer-to-peerapplication communication), and extensible markup language metadatainterchange format (XMI) interfaces (e.g., for communication between webservices). The interfaces may be tightly coupled, synchronousimplementations such as in Java 2 Platform Enterprise Edition (J2EE),COM, or distributed COM (DCOM) examples. Alternatively, or in addition,the interfaces may be loosely coupled, asynchronous implementations suchas in a web service (e.g., using the simple object access protocol). Ingeneral, the interfaces may include any combination of the followingcharacteristics: tightly coupled, loosely coupled, synchronous,asynchronous, and the like. Further, the interfaces may conform to astandard protocol, a proprietary protocol, or any combination ofstandard and proprietary protocols. The interfaces described herein mayall be part of a single interface or may be implemented as separateinterfaces or any combination therein. The interfaces may executelocally or remotely to provide functionality. Further, the interfacesmay include additional or less functionality than illustrated ordescribed herein.

The computer 302 may operate in a networked environment, incommunication with one or more remote computers 362. The remote computer362 may be a personal computer, a server, a router, a network PC, a peerdevice, other common network node, and the like, and typically includesits own versions of many or all of the internal and external orperipheral elements described above relative to the computer 302. In anetworked environment, software modules and/or data used by the computer302, or portions thereof, may be stored in the remote computer 362 or aremote memory storage device (not shown) associated therewith orconnected thereto. By way of example, and not limitation, FIG. 10illustrates remote application programs/data 364 as residing in memoryof the remote computer 362.

The network logical connections or communications depicted in FIG. 10include a local area network (LAN) 366 and a wide area network (WAN)368, but may also include any other suitable networks and connections.The LAN 366 and/or WAN 368 may be a wired network, a wireless network, acombination thereof, and the like. Such networking environments arecommonplace in offices, enterprise-wide computer networks, intranets,and global computer networks (e.g., the Internet or World Wide Web).When used in a local area networking environment, the computer 302 ispreferably connected to the LAN 366 through the network adapter orinterface 314. When used in a wide area networking environment, thecomputer preferably includes the modem 356 or any other means forestablishing communications over the WAN 368. The modem 356, which maybe internal or external, is preferably connected to the system bus 318via the input interface 310, or other appropriate arrangement. Thenetwork connections shown are exemplary and other means of establishinga communications link between the computers 302, 362 may be used.

Finally, a plurality of different field input and outputs (field I/O)370 of the test machine 202 are shown connected to the processor 304 viathe system bus 318 and machine I/O interface 316. An exemplary andpreferred field I/O 370 is more specifically illustrated in theorganizational block diagram of FIG. 11. The field I/O's are inhardwired or wireless electrical communication with at least thefollowing various machine elements: push buttons 372, stack lights 374,horns 376, proximity switches 378, solenoids 380, relays 382, keyswitches 384, analog sensors 386, and the like. Specific examples ofsuch elements are shown in the Figure.

In operation, and referring again to FIG. 10, the processor 304 ispowered by a power supply (not shown) and initially operates oninstructions stored in internal memory 306. The processor 304 receivescommands or data from a user through input devices, and receives,processes, and stores data or instructions from various storage mediaincluding the internal memory 306 and through the memory interface 308,and outputs data or instructions to output peripheral devices.Generally, data processors of computers are programmed to carry outcomputer-executable instructions, such as those associated with orembedded in software or computer programs such as operating systems,application programs, and the like.

Computer programs may include, but are not limited to routines, modules,objects, components, data structures, and the like, for performingparticular tasks and/or implementing particular abstract data types.Computer programs may exist in a variety of forms both active andinactive. General examples include software programs comprised ofinstructions in source code, object code, executable code or otherformats; firmware programs; or hardware description language (HDL)files; and the like. Specific examples include assembler, C, C++objects, Visual Basic, Visual C++, XML, Java, and Microsoft® FoundationClasses, and the like.

As mentioned previously, the computer 302 is adapted to use at leastsome form of computer readable media, which may include volatile and/ornon-volatile media, removable and/or non-removable media, and which maybe any suitable medium that may be accessed by a computer. By way ofexample and not limitation, computer readable media include computerstorage media, communication media, and any combination thereof. Thesystem and methods described herein may include these and other varioustypes of computer-readable media wherein such media may contain, store,and/or carry instructions or programs for implementing some or all ofthe method steps described below in conjunction with the processor 304or other data processor. At least some portion of the testing andinspection methods may be practiced locally or in a distributedcomputing environment where tasks may be performed by remote computersor processing devices that are linked through a communications network,such as the LAN 366, WAN 368, or the like. In a distributed computingenvironment, program modules may be located in both local and remotecomputer storage media including memory storage devices.

Computer storage media may be used to distribute computer programslocally and may include volatile and non-volatile, removable andnon-removable media implemented in any method or technology for storageof information such as computer readable instructions, program modules,data structures, other data, and the like. More specifically, computerstorage media may include RAM, ROM, EEPROM, flash memory or memorysticks, integrated circuits, CD-ROM, digital versatile disks (DVD) orother optical disk storage, magnetic cassettes, magnetic tape, magneticdisk storage or other magnetic storage devices, or any other medium thatmay be used to store the desired information and that may be accessed bya computer.

Communication media preferably embody computer readable instructions,program modules, data structures, other data, and the like, in acompressed or uncompressed data signal such as a carrier wave or othertransport means, and include any information delivery media. Thoseskilled in the art are familiar with modulated data signals, which haveone or more characteristics set or changed in such a manner as to encodeinformation in the signals. In any event, exemplary computer readablesignals, whether modulated using a carrier or not, are signals that acomputer system hosting or running a computer program can be configuredto access, including signals downloaded using the Internet or othernetworks. Wired media such as a wired network or direct-wiredconnection, and wireless media such as acoustic, RF, infrared, and otherwireless media, are examples of communication media. In a sense, theInternet itself, as an abstract entity, is a computer readable mediumand the same is true of computer networks in general. It is therefore tobe understood that the testing and inspection methods may be performedby any computing devices suitable for executing one or more of thespecified functions, using any media and being located anywhere.

System Software Architecture

FIG. 12 illustrates a block diagram of a differencing video system (DVS)software architecture 400, which is suitable for storage on one or moreof the non-volatile memory media 334, 336, 340 associated with thecomputer 302 of FIG. 10 and for at least partial temporary storage onthe volatile memory 320 of the internal memory 306 of the computer 302.It is also contemplated that any portion of the software architecture400, or other data or databases, could be stored on any remote computer362 and/or media and distributed over any suitable network. The softwarearchitecture 400 includes a DVS human machine interface (HMI) 402, whichmay be developed with Visual Basic® 6.0 as a central graphical userinterface (GUI) for the computer 302.

One or more databases 404 are provided for storing data automaticallycollected, manually input, or by any combination thereof. Thedatabase(s) 404 communicates with one or both of the HMI 402 and asubstrate data collector program (SDC) 406. The SDC 406 may also bedeveloped using Visual Basic® 6.0 and will be described in furtherdetail below with reference to FIGS. 64 through 69. The database(s) 404is preferably developed with Microsoft® SQL Server 2000, but may bedeveloped with any other known and suitable database programs such asdBase®, Microsoft®V Access®, and the like. The database(s) 404 and HMI402 and/or SDC 406 are interfaced with any suitable interface module orprogram 408 such as an Active Data Objects Data Base (ADOdb), which is awidely known freely available product to those of ordinary skill in theart. The database(s) 404 will be described in further detail below withrespect to FIG. 63.

Also, the HMI 402 communicates with a suitable image capture andanalysis program 410 such as one developed using MontiVision DevelopmentKit 2.2, or any other suitable image processing software. The imageprocessing program 410 cooperates with any suitable application programinterfaces (API) 412, such as Microsoft® DirectX® and DirectShow® toenable flexible program access to hardware such as digital cameras.DirectX® is a collection of multimedia application programminginterfaces (APIs), and provides a standard development platform thatenables access to specialized hardware features without having to writehardware-specific code. DirectX® also enables multimedia applications totake advantage of hardware acceleration features supported by graphicsaccelerators. Microsoft® DirectShow® is one of the DirectX® technologycomponents and is an architecture for streaming media on the Microsoft®Windows® platform. DirectShow® provides for high-quality capture andplayback of multimedia streams and supports a wide variety of imagingformats, including Advanced Systems Format (ASF), Motion Picture ExpertsGroup (MPEG), Audio-Video Interleaved (AVI), MPEG Audio Layer-3 (MP3),and WAV sound files. DirectShow® supports capture from digital andanalog devices based on the Windows® Driver Model (WDM) or Video forWindows® and is integrated with other DirectX® technologies toautomatically detect and use video and audio acceleration hardware whenavailable, but is also capable of supporting systems withoutacceleration hardware. DirectShow® is preferably deployed to simplifymedia playback, media format conversion, and image capture tasks, andprovides access to underlying imaging stream control architecture forcustom applications.

Moreover, the HMI 402 also communicates with a machine control program414, which is preferably loaded to the computer 302. In any case, themachine control program 414 is preferably developed using any suitablemachine automation and control software such as Entivity Think & Do®Studio 7.1. The HMI 402 and machine control program 414 are interfacedwith any suitable hardware driver 416 such as an object linking andembedding (OLE) for process control (OPC) programs, which are readilyavailable from Rockwell Automation, and National Instruments, amongothers.

Machine Control

FIGS. 13A through 13C illustrate a preferred automatic or auto-cyclemachine control routine 500 that may be carried out at least in partusing the control system of FIG. 10 described above and using themachine control 414 software of FIG. 12. In describing the routine,reference will be made to the control system of FIG. 10 and to theproduction system of FIG. 9.

Initially, at step 502, it is determined if an auto button or menu itemis pushed or selected. The auto button may be a separate machinehardware push button, a touchscreen pick, or the like. If auto is notselected, then the routine loops to a point prior to step 502. But ifauto is selected, then the routine proceeds to step 504.

At step 504, the routine exits if a machine fault is detected or if amanual push button such as an emergency stop has been pressed.Otherwise, the routine proceeds to step 506. Step 504 represents anexception block wherein the condition is checked continuously andindependently of the logic flow.

At step 506, the routine calls a predefined machine homing sub-routine.Such a homing subroutine is standard and known to those of ordinaryskill in the art, and basically commands movable machine sub-systemssuch as the dome lift device(s), pallet lift device(s), and camera liftdevice(s), to travel toward a known home position.

At step 508, the incoming conveyor 216 is activated and the pallet stop218 lifted, so that the tire T and pallet 208 are loaded onto themachine table 206 in a predetermined location.

At step 510, it is determined whether the tire is present and ready tobe tested and inspected, by way of communication with the proximitysensor 222. If the proximity sensor 222 does not detect the tire T, thenthe routine loops back to a position between Steps 508 and 510 tore-check if there is a tire present. Otherwise, the routine proceeds tostep 512. The Auto Start bubble represents the beginning of the nextauto cycle after the routine finishes the current cycle and remains inauto.

At step 512, the pallet 208 and tire T are raised by sending a commandto open the air valve 212 and thereby actuate the air cylinder(s) 210.Thereafter, or substantially simultaneously, at step 514, the upper dome228 is lowered and the imaging head 250 raised by sending commands tothe appropriate stepper motors 234, 258. When the pallet 208 and tire T,upper dome 228, and imaging head 250 are in position, such as by beingsensed by limit switches (not shown), the routine proceeds to a tiretesting and inspection sequence beginning at step 516 of FIG. 13B.

In the tire testing and inspection sequence, several successive imagesof the object are preferably captured and stored individually during atesting cycle between a predetermined baseline vacuum test level and afirst predetermined vacuum test level. These images are preferablyprocessed with the computer 302 and the results are preferably displayedon the computer monitor 360 in real time. Any desired number (N) ofimages are captured and stored as image 1, image 2, etc., through imageN. Preferably six images are taken and stored as image 1 through image6, but any other suitable quantity of images may also be taken andstored, such as four images taken and stored as image 1 through image 4.

In capturing a digital image, an imaging device such as a CCD is firstreset. Any other suitable imaging devices, such as a complementary metaloxide semiconductor (CMOS), may also be used. Then a mechanical and/orelectrical shutter of the imaging device is “opened” to expose the CCDto light reflected from the tire to build up electrical charges in theCCD, until the shutter closes. The CCD is basically an array of tinylight-sensitive diodes or photosites, which convert light or photonsinto electrical charges or electrons that correspond to image pixels. ACMOS device is similar, but includes an array of several tinytransistors or photosites that correspond to image pixels. The CMOSapproach is more flexible than the CCD approach because each CMOS pixelcan be read individually. In either case, each photosite is sensitive tolight, wherein the brighter the light that hits any given photosite, thegreater the electrical charge that will accumulate at that site. Ananalog to digital converter measures the electrical charge and creates adigital signal that represents the values of the charge at each pixel.The processor interpolates the data from the pixels to create a color orgrayscale digital image. The processor may also perform a predeterminedlevel of compression on the data for more efficient storage. In anyevent, the processor may also direct or store the digital image to amemory as an image data file. Moreover, digital live video is definedherein as a succession of digital images. Accordingly, as used hereinthe term “image” broadly encompasses a still or live video visual image,a printed visual image, a data file like a bitmap or the like thatrepresents a still or live video image, or a scan of a printed image,and the like. More specifically, the terminology “digital image” broadlyencompasses a still or live video visual image and a data filerepresenting an image. Finally, the term anomaly may refer to an actual,physical anomaly in an object, and to a digital representation (such asa “blob”) of that anomaly such as in a digital image.

Referring to FIG. 13B, at step 516 with the pallet 208 and tire T, upperdome 228, and imaging head 250 in position, a first or baseline image iscaptured by the imaging equipment. The predetermined baseline vacuumtest level may be a zero value vacuum test level or may be a non-zerovalue vacuum test level. As discussed previously, coherent light isdirected onto the tire T by the light sources of the imaging head 250.Coherent light is not received by the cameras directly from the lightsources, only indirectly as reflected off of the tire T. It iscontemplated that some ambient flooding of coherent light could bereceived by the cameras, but not directly from the light sources. Inother words, the coherent light is directly received by the cameras ofthe imaging head 250 substantially only as reflected straight from thetire T. The reflected coherent light is captured by the cameras and,preferably, associated computer memory, over the range of test levels asa plurality of digital images of the object, as follows.

Then at step 518, a vacuum cycle is initiated wherein the vacuum pump240 is activated by sending a command to the pump solenoid 246 to openthe control valve 244 and pump air out of the vacuum chamber createdbetween the upper and lower domes 228, 236.

As shown by step 520, the pump 240 is cycled or incremented until adesired predetermined vacuum level is reached. The predetermined vacuumlevels may be stored in memory as a look-up table or the like.

At step 522, it is determined whether the desired predetermined vacuumlevel from step 520 has been reached. If not, then the routinecontinuously loops at step 522 until the desired vacuum level isreached. Otherwise, the routine proceeds to step 524, wherein anotherimage is captured at the incremented vacuum level.

Thereafter, at step 526, it is determined whether the last image N hasbeen taken or captured at the last of several predetermined vacuumlevels. If not, then the routine loops back and repeats steps 520through 526 until the last image is captured at the last vacuum level.At this point, the vacuum pump 240 is deactivated, the solenoid-actuatedexhaust valve 248 is activated at step 528, and the routine proceeds toa tire validation sequence beginning at step 530 of FIG. 13C.

It is contemplated that the tire testing and inspection sequence may becarried out according to any number of acceptable alternatives. Forexample, the initial image need not be captured at a zero vacuum levelbut may be captured at a first incremented vacuum level. Also, thevacuum cycle need not be incremented according to increasing vacuumlevels but may be decremented from an initially relatively higher leveltoward a relatively lower or zero level, according to decreasing vacuumlevels. Moreover, the image captures need not be carried out atpredetermined increments and the vacuum cycle need not include discretestops or increments. Rather, the vacuum cycle may be continuous over arange of increments or levels and the image capture may be carried outat predetermined time intervals, at predetermined vacuum levels,randomly, or any combination thereof.

Referring to FIG. 13C, at step 530 of the tire validation sequence ofthe routine 500, it is preferable that an image processing step 531 becarried out substantially simultaneously as the upper dome is raised andthe imaging head 250 and pallet 208 are lowered in step 502. In step531, one or more image processing sub-routines are called and carriedout and are described with reference to FIGS. 29 through 62, discussedhereinafter below. The sub-routines facilitate analysis of the imagescaptured. It is also contemplated that the image processing and analysisstep 531 could be carried out as the images are captured in steps 516through 526. In other words, step 531 could be initiated substantiallysimultaneously with steps 516 through 526.

At step 534, it is determined whether an operator has activated a tirefailed pushbutton or screen pick. If not, it is determined whether theoperator has instead activated a tire passed pushbutton or screen pickat step 536. If the operator has not activated either pushbutton, thenthe routine loops back to step 534. If, however, the operator hasactivated the tire passed button, then the outbound non-anomalousconveyor 224 is enabled at step 538 to carry the pallet 208 and tire Toff of the machine table 206. If, however, at step 534, the operator hasactivated the tire failed button, then the anomalous conveyor 226 isinstead enabled to carry the pallet 208 and tire T off the machine table206 at step 540. At step 542, the appropriate conveyor 224, 226 isactivated and the pallet stop 218 lowered to release the tire T andpallet 208.

At step 544, it is determined whether the tire T has been released byreferencing the status of the proximity switch 222 signal. If the tire Thas been released, then the pallet stop 218 is raised at step 546 andthereafter the routine terminates and proceeds to auto start. If not,then the routine continuously loops at step 544 until the tire T iseventually released.

DVS HMI

FIGS. 14 through 28 illustrate some of the functionality of the HMI 402through several graphical user interface (GUI) screen shots. GUItouchscreens provide an interactive means for a user to input data tothe computer 302 for use with the software programs and/or data storedin one or more databases or database tables. Also, the GUI touchscreenspreferably represent different states of the program to allow input ofdifferent data and display of data and information. The terminology GUIis interchangeable with screen, display, and the like.

Main Screen

FIG. 14 illustrates a main screen that provides a user with auto ormanual mode control, test image analysis, tire validation functionality,and basic production information. Across the top of the screen is atitle banner with logo and graphics. Below the banner is a row of thefollowing menu buttons: main, test images, maintenance, report, setup,system log, about, and shutdown; all of which are used to access variousscreens or functions and will be described in further detail hereinbelow. Below the menu buttons there is a mode and status/fault indicatorbar and, below that, there are basically the following three columns: aproduction information column on the left, an operator input column onthe right, and real-time or live raw or processed images of fourdifferent sectors of the tire presented as an array of four windows inthe middle column.

The production information column includes several fields including testprofile, test cycles, operator, and test fields. The test profile fieldrepresents a name of a tire profile that is currently being used andthat contains information regarding camera settings, camera position,and vacuum levels used to test the tire, as will be further describedbelow with regard to the setup touchbutton. The test cycles fieldrepresents the number of cycles since last reset. The operator fieldrepresents the name of the operator that is logged on. The test field isa unique identifier for the test, and is preferably a number that isautomatically incremented for each test cycle.

The operator input information preferably includes an image functionstouchbutton, a reset count button for resetting the test cycles field inthe production information column, auto vs. manual buttons for placingthe machine in an automatic mode or a manual mode, and pass or failbuttons that an operator may press upon evaluation of final processedimages to send a completed tire down a reject/fail conveyor or an acceptconveyor.

As shown by FIG. 14, the image functions touchbutton may be pressed toyield an image functions toolbar, which includes image analysis toolsfor tire validation purposes, and may be pressed again to close thetoolbar. The image analysis tools will be described in further detailbelow with reference to a method and functionality of image processingsoftware illustrated by FIGS. 29 through 62. In particular, a digitalimage differencing function that yields a cumulative differential image(CDI) will be described in detail below. In any case, the image analysistools may include the following tool buttons (not shown): enhanced,analyzed, overlay, invert, original, start video, and stop video.

The enhanced button is pressed to perform an enhanced image process,which will be described in detail below, and, as shown by the dialog boxof FIG. 15, the user will be prompted to enter a desired filter valueand then press an OK button to proceed back to the image analysistoolbar. Preferably, a filter value is chosen such that only anomalieswill appear in the image and the background will be eliminated. Thefilter value selection process is iterative wherein a higher filternumber will bring more data into the image whereas a low filter numberwill bring relatively less.

The analyzed button is pressed to perform an analyzed image process,wherein the user is prompted to enter values for filtering, minimumwidth, minimum height, maximum width, and maximum height, and then pressOK. This process produces a further enhanced image based on the filtervalue specified. The number, surface area, perimeter, and relativeorientation or angle of anomalies in the analyzed image can bequantified by the dimensions specified.

The overlay button is pressed to overlay an analyzed image over anoriginal image of the tested tire. Like the processes above, oncepressed, the user will be prompted to enter values for filter, minimumwidth, minimum height, maximum width, and maximum height, and then pressOK. This process produces a further enhanced image based on the filtervalue specified. The number, surface area, perimeter, and relativeorientation or angle of anomalies in the analyzed image can bequantified by the dimensions specified. Furthermore, the color of theanomalies is changed from black to a different color, usually yellow,and the new color image is then overlaid onto a raw or original image ofthe tested tire.

The invert button is pressed to invert, or make a “negative” of, theimage.

The original button is pressed to display a raw cumulative differentialimage.

Upon pressing any of the above mentioned buttons, the real time liveimages in the array of windows is replaced with the selected imagetypes. In contrast, when the start video button is pressed the array ofwindows displays the real time live images. Additionally, when the stopvideo button is pressed, live video is stopped and the last frame fromthe live video stream is frozen. It is contemplated that the imagedifferencing steps disclosed herein may be carried out in real-time toyield live video.

At the end of an image processing routine the final results of the testmay be presented in the appropriate windows. The four sectors preferablyrefer to circumferential sectors 1, 2, 3, and 4 of the tire takenrespectively approximately at 0°-90°, 90°-180°, 180°-270°, and 270°-0°.It is contemplated that the sectors could overlap if desired. The mainscreen is visible upon application startup and can be accessed at anytime by touching the main button in the menu row.

Test Images

From the main screen, the test images touchbutton may be selected toshow the test images screen depicted in FIG. 16, which provides theoperator with a means to view, manipulate, and compare results from upto three different tests at any one time. The operator can print, save,delete, and view any images from the current or previous tests. Beneaththe mode indicator bar there are the following six columns: a testcolumn referring to the test set number indicating the sequential testidentifier, four columns representing images from sectors 1 through 4,and an operator input column for the present test set.

In the operator input column, the item in the drop-down box is thepresently selected test set, wherein any of the previously discussedimage analysis tools (shown at the bottom of the column) or filemanagement functions (load, print, save, delete) apply to the test setselected. The image analysis tools function similarly as describedabove. The file management functions include a load images button that,once pressed, the operator will be prompted to enter a test set to bedisplayed via a popup number pad dialog box (not shown). Thereafter, thenewly selected images will be displayed over the currently selected testset.

Once the print images button is pressed, the operator is presented witha print preview screen of the test set selected, as shown in FIG. 17.The print preview screen will show the test set in whatever state it waslast in (i.e. analyzed, overlaid, enhanced, inverted, or original). Theprint preview screen also allows the operator to enter a title for theprint set and a description for each sector that will print along sidethe images. The operator presses print to print to the printer andpresses close to return to the previous screen. The save images buttonis pressed to present the operator with a save dialog box from which thecurrently selected test set can be saved to another location (i.e. localhard disk, remote server, and the like) and/or be renamed. The deleteimages button is pressed to query the operator to verify that the filesfor the currently selected test set should be deleted. If OK is pressed,then the files will be permanently deleted.

Maintenance Tool

From any of the menu screens, the maintenance menu button may be touchedto access the maintenance screen, which is shown in FIG. 18 and whichallows an operator and/or maintenance person to verify that all of themachine inputs and outputs (I/O) are working correctly. An operator canalso manipulate certain I/O while in manual mode. The maintenance screenincludes three columns including a first column or inputs column with adigital inputs box and an analog inputs box, and a second column oroutputs column with a digital outputs box and an analog outputs box. Theinputs and output boxes display all of the machine digital inputs andoutputs and their current state of ON or OFF and all of the machineanalog inputs and outputs and their current value.

A third column is a manual function column including the below describedmanual command touchbuttons. A vacuum setpoint 1 button is pressed toset system vacuum to setpoint 1, which is predefined in the system setupscreen described in further detail herein below. The upper dome ispreferably down in order for this function to be enabled. A vacuumsetpoint 2 button is press to set system vacuum to setpoint 2, which isalso predefined in system setup. Again, the upper dome is preferablydown in order for this function to be enabled. A set exhaust button ispressed to activate the exhaust solenoid and thereby release the vacuumwithin the vacuum chamber, and is pressed again to deactivate theexhaust solenoid. A raise pallet lift button is pressed to raise thepallet lift, and is pressed again to lower the pallet lift. A lowerpallet stop button is pressed to lower the pallet stop, and is pressedagain to raise the pallet stop. A conveyor on button is pressed toactivate the incoming conveyor, and is pressed again to deactivate theconveyor. A jog dome up button is pressed to jog the upper dome up, andis released to stop the upward movement of the upper dome. A jog domedown button is pressed to jog the dome down, and is released to stop thedownward movement of the upper dome. A laser on button is pressed toactivate the imaging equipment lasers, and is pressed again todeactivate the lasers.

Camera Position Control Pendant

Not currently integrated into the HMI interface is the functionality ofthe separate camera position control pendant 260, mentioned previouslyand illustrated in FIG. 19. The camera position control pendant 260 isused to manually control each axis of the imaging head. A horizontalrocker switch is pressed to move the cameras horizontally toward, oraway from, the tire. A vertical rocker switch is pressed to move theimaging head up and down with respect to the machine table, out of andinto the lower dome. A tilt rocker switch is pressed to tilt the camerastoward, and away from, the upper dome. A pan rocker switch is pressed torotate the imaging head clockwise or counterclockwise.

Report

As shown in FIG. 20, the report menu button of the toolbar may bepressed from any of the toolbar menu screens to access a report screen,which allows an operator to view various production details. As just oneexample, the production details may include tire profile, tirevalidation (pass/fail), operator, and the date/time of tested tires.Those of ordinary skill in the art recognize that information presentedon this screen can be customized to any given application according toneeds of a particular customer. A build report button may be pressed togenerate a report after entering start and end dates in the fields tothe left of the report button.

Setup

From any of the toolbar menu screens, including the main report screenof FIG. 20, a setup menu button of the toolbar may be pressed to accessa drop down button menu including tire, camera, and system setupbuttons, as shown in FIG. 21. Pressing the various setup buttons leadsto corresponding setup screen which allows the operator to setup variousprofiles.

Tire Setup

Pressing the tire button permits a user to access a tire profile orsetup screen, which is shown in FIG. 22 and is used to accommodatevariations in tire models due to size, looseness, and illumination. Thetire profile may be manually selected for each batch of tires run. Butit is contemplated that if the tires are incorporated with a barcode,RFID, other identifier technology that can be recognized via OCR(Optical Character Recognition), and the like, then an auto identifysystem can be adapted for use with this tire profile function toautomatically populate and or select the values and settings discussedbelow. In any case, the screen includes a tire profile box, a camerabox, a vacuum box, and a position box.

The camera box addresses camera settings, wherein several camerasettings are shown such as gain, exposure, brightness, contrast, andgamma that pertain to the currently selected profile from the tireprofile box. It is contemplated that camera iris and focal fields, amongothers, could be added to this box. In any case, one or more of thefields can be modified and saved to the current profile.

Similarly, in the vacuum box, there are shown current maximum andminimum vacuum settings that can be modified and saved to the currentprofile.

The position box controls camera position relative to the tire beingtested, and allows an operator to configure up to 6 different positions.As shown, there is a position array including five columns and six rows.The five columns include positions 1 through 6 of the 6 differentpositions, a vertical position column, a horizontal position column, atilt position column, and a sector column. The position field in each ofthe relevant columns is the actual position in inches that theindividual camera should move from its home position. The clear field ineach of the relevant columns is a position in inches where noobstructions are present and the camera can safely move from oneposition to the next. The numbers one through six are buttons that maybe used in conjunction with the copy, cut, paste, and clear buttons. The“current” field displays current vertical, horizontal, tilt, and sectordata of the camera and is not a button. The pendant of FIG. 19 is usedto move a camera to an appropriate spot using live video feedback. Theoperator then enters the current position coordinates into theappropriate position number.

At the bottom of each of the vertical, horizontal, tilt, and sectorcolumns there is an entry field, a go to button, and a home button.Pressing the go to button under a particular position number of aparticular position type will move appropriate portions of the imaginghead to all relevant axes. In other words, if the go to button ispressed in the vertical column, then only the corresponding portion ofthe imaging head will move to the vertical axis position specified.Likewise, pressing the home button sends the imaging head to the homeposition for that position number or axis.

In the tire profile box, an existing tire profile may be selected forviewing via the drop-down menu (ACME TIRE). The tire profile functionallows a user to save the camera, vacuum, and position settingsdescribed above, or retrieve already saved such settings. Otherwise, anadd button may be pressed to create a new tire profile. A save buttonmay be pressed to save any changes made to the currently selectedprofile. And a delete button may be pressed to permanently delete thecurrently selected profile.

Beneath the position array, there is a row of tool buttons includingcut, copy, paste, and clear. Pressing the cut tool button copies thecurrently selected position values and turns the position number colorfrom green to red, thereby indicating that the values will be clearedafter pressing the paste tool button. A position is selected by clickingon the position number, which will turn the number from grey to green.Pressing the copy tool button merely copies the currently selectedposition values and turns the position number color from green toyellow. Pressing the paste button pastes the values from a position thatwas cut or copied from (i.e. yellow or red position), whereafter theyellow or red position number color is turned back to grey. Pressing theclear button clears values from the currently selected position number1-6.

A second page (not shown) of the tire profile may contain fields forentering tire specific data such as manufacturer, model, size, new orused, customer name, anomaly constraints, and the like.

Camera Setup

As shown in FIG. 21, the setup button of the toolbar may be pressed toaccess the drop down button menu after which the camera setup button maybe pressed to access a camera setup screen, which is shown in FIG. 23and allows an operator to setup the default properties by sector such asgain, exposure, brightness, contrast, and gamma. This screen provides alive video stream from the currently selected camera, which can beselected from the drop down field for previewing and/or modification.Below the drop down field, the properties of currently selected cameraare shown including gain and exposure. Below that, a camera sectorsection shows the sector of the tire that is associated with thecurrently selected camera. This property can be changed by clicking thecheckbox of the appropriate sector. Further below, a camera settingsbutton can be pressed, whereafter the operator will be prompted with adialogue box that will allow the operator to change the camera gain,exposure, brightness, contrast, and gamma, as shown in FIGS. 24 and 25,which show the preferred settings.

System Setup

As shown in FIG. 21, the setup button of the toolbar may be pressed toaccess the drop down button menu after which the system setup button maybe pressed to access a system setup screen, which is shown in FIG. 26and allows an operator to modify system default vacuum, image archival,and test settings. A vacuum box displays the current vacuum level ininches of mercury (in Hg), and settings for maximum vacuum, minimumvacuum, and first and second vacuum setpoints. Setpoint 1 is the maximumdefault vacuum level for carrying out the testing and inspectionprocess, wherein this value is used if another value is not specified inthe tire profile. Setpoint 2 is the minimum default vacuum level forcarrying out the testing and inspection process, wherein this value isused if another value is not specified in the tire profile. The desirednumber of vacuum points are preferably equidistantly scaled over thevacuum range with a minimum of 0.5 in Hg increments. For example, if thevacuum range is 0-2.5 in HG, then images at 0, 0.5, 1, 1.5, 2, and 2.5will be taken. If, however, the vacuum range is 0-3.5 in HG, then imagesat 0, 0.7, 1.4, 2.1, 2.8, and 3.5 will be taken.

A vacuum calibration box is provided for carrying out several vacuumcalibration steps. Vacuum calibration is carried out by first puttingthe system in manual by pressing the manual button on the main screen,and then lowering the upper dome via the maintenance screen. Next, theexhaust button on the system setup screen is pressed to eliminate anyvacuum in the vacuum chamber. Then, the zero button is pressed to obtaina zero offset value and, thereafter, a vacuum setpoint 1 button ispressed to set the vacuum level to the value in the setpoint 1 field.Finally, a linearize button is pressed to finish the calibration.Thereafter, the exhaust button may be pressed to exhaust the vacuumchamber to enable lifting of the dome.

A file settings and test configuration box is also provided. A filesettings portion includes an archive path field to define whereprocessed images are stored, and further includes an image file namefield to define a file name template, wherein an exemplary defaultformat is TireProfile_TestID-Sector.bmp. One of the checkboxes—unfiltered image, enhanced, analyzed, and overlay—may be checkedfor the desired type of image to be displayed at the end of the imageprocessing. These settings and their associated functionality will bediscussed below in detail with respect to routines and associatedsoftware. A settling time field may be completed to define the time inmilliseconds before starting the vacuum cycle once the dome is fullylowered against the machine table. Finally, a save all settings buttonmay be pressed to save all system settings.

System Log

As shown in FIG. 27, the system log menu button of the toolbar may bepressed from any of the toolbar menu screens to access a system logscreen, which allows an operator to view various system events. Forexample, all system messages, warnings, and faults are saved anddisplayed on this screen. An all tab may be selected to view allmessages, warnings, and faults. Whereas message, warning, and fault tabsmay be selected to screen for the selected types of events. Page up andpage down buttons enable scrolling among the various events.

About

As shown in FIG. 28, the about menu button of the toolbar may be pressedfrom any of the toolbar menu screens to access an about screen, whichallows an operator to view information regarding the system type,software version, and contact information.

Shutdown

As shown in any of the toolbar menu screens discussed above, a shutdownmenu button may be pressed to close the program.

Image Capture and Analysis

Using the apparatus and methods described above and using preferredimage processing routines described herein, it is possible to capture afirst straight reflection from a test object as a first image andthereafter capture a second straight reflection from the test object asa second image, and then compare the difference of the reflected lightfrom the two images between unstressed and stressed conditions of theobject and/or between stressed conditions of different magnitudes. Thecameras directly receive the coherent light substantially as reflectedstraight from the test object. Moreover, the cameras and/or the controlmodule capture the reflected coherent light over the range of testlevels as a plurality of digital images of the test object.

According to the reflection law of physics, when a surface of the testobject moves, each individual reflective ray of light moves to adifferent position, wherein the imaging equipment senses the positionchange, thereby yielding a difference between image captures. Using theroutines discussed herein, anomalous regions within the captured imagescan be viewed without confusion of fringes and/or double imagesassociated with previous testing and inspection approaches. The imagescan be further processed to enhance the images for better viewing byhumans, to count anomalies, to measure anomalies, and/or to display justthe anomalies or the anomalies as overlaid onto a baseline image.

In general, an exemplary differencing routine may include captures ofsix images equally spaced between 0.0 in. Hg. and 2.5 in. Hg. Capture istriggered by a vacuum transducer connected to the CPU, wherein thevacuum transducer is read or sampled many times per second. At eachsetpoint, an image is captured according to a live differencing routinedescribed herein below). Three pairs of images taken at 0.0 and 0.5 inHg; 1.0 and 1.5 in Hg; and 2.0 and 2.5 in Hg, are differenced to produceimage A, image B, and image C. Images A and B and C are added to producea raw cumulative differential image (raw CDI), which is thereafterdigitally processed or finessed to produce a resultant CDI. Theresultant CDI is further digitally processed using an enhancementroutine to produce an enhanced CDI, an analyzed CDI, and/or an overlaidCDI. The methods described herein may be performed by the computer 304as a computer program and various predetermined setpoints or othervalues may be stored in memory as a look-up table, or the like.

The resultant CDI is composed of speckle patterns that exhibit a pixelvalue from 0 thru 255 grayscale (from black to white) with light orbright areas representing the presence of motion or departure from aprevious position (i.e. the presence of an anomaly). As discussed abovewith respect to the image functions button of the DVS HMI, an operatormay set a filter value to specify a threshold level with all portions ofthe image above that filter value appearing white and everything belowturning black (i.e. the presents of an anomaly). The computer may thencount the number of black anomalous areas and calculate anomaly surfaceareas and perimeters in pixels. The chosen resultant image can then bedisplayed on the interface screen inverted or overlaid and then theimage files stored.

A more detailed description of the functionality of the image processingsoftware is presented below and illustrated in FIGS. 29 through 62showing several GUI screen shots and various image processingsubroutines, any one or more of which may be carried out as, or calledby, step 531 of FIG. 13C using MontiVision or any other suitable imageprocessing software. Preferably, all subroutines are carried out foreach individual camera of the imaging head, and any properties ofMontiVision function blocks that are not explicitly stated or shown arepreferably assumed to have their default properties. As an initialmatter, default properties for MontiVision BayerToRGB filters and forMontiVision Demosaic Method and Correction Matrix are preferably set to“none”.

Video Configuration

A video configuration routine is shown in FIG. 29 and is used toinitialize camera properties when the HMI 402 of FIG. 12 is activated.As shown in FIG. 29, a VideoSource function represents capture of avideo signal or stream and a line connects a capture node of thisfunction to an input node of a Resize function. The Resize functioneffectively resizes the video stream and dictates certain properties ofthe video signal as exemplified by a Resize properties dialog box ofFIG. 30, wherein an exemplary preferred output image size is 1280 pixelsin width by 1024 pixels in height and includes nearest neighbor (NN)interpolation. The output from the Resize function goes to an input of aColor Space Converter, which converts between different color spaces,e.g. RGB24 to RGB32, RGB to YUV, etc., thereby connecting differentmodules that do not support each other's color space. The output fromthe Color Space Converter goes to an input of a Video Renderer function,which renders a video stream to a VGA, PAL/NTSC, or like monitor using agraphics card “TV Out” function and uses the DirectX® module to achievebest possible performance. Accordingly, video stream can be displayed ina window or on a full monitor screen, or on an analog monitor (TV), orthe like.

Live Video

A live video routine is illustrated in FIG. 31 and is called when anoperator presses the start video button of the HMI. Thereafter, imagedata is obtained, preferably from all of the cameras, then resized asdiscussed above, and rendered so that it can be displayed on the HMI.Only one camera process is shown, as an example. The live video routineis preferably identical to that of FIG. 29, except that an Image Grabberfunction is applied between the Resize and Color Space Converterfunctions. In general, the Image Grabber is used to capture stills orsnapshots of the video stream and supports output of various fileformats including: Bitmap (*.bmp), JPEG (*.jpg), TIFF (*.tif), and PNG(*.png). This snapshot functionality is preferably implemented using anIMVTrigger Interface function of MontiVision. A video frame is saved assingle image file on every trigger event, and the names of the outputfiles can be defined using file name templates if desired. FIG. 32depicts the output file properties of the Image Grabber that are set asshown, including a file name of VideoSnapshot with an automatic counterthat assigns sequential numerical extensions to the file names. Those ofordinary skill in the art will recognize that the particular file namesare exemplary and may be specified for any given application as desired.Preferably, the Image Grabber allows for capture of the last frame ofthe video stream, which is displayed after the operator presses the stopvideo button on the HMI.

Image Capture

An image capture routine is shown in FIG. 33 and is used to capturesnapshots of objects. Baseline shots or captures for a Live Differencingroutine are captured using this function. Basically, this routine isidentical to that described with respect to FIG. 31, except the VideoRenderer function is replaced with a Null Renderer function, whichterminates video that does not need to be displayed, but that cannot beleft unterminated.

View File

A view file routine is shown in FIG. 34 and is used to display processedstill images, as opposed to the unprocessed live video, on the HMI.Here, an Image File Source function outputs to the Video Rendererdiscussed previously. The dialog box of FIG. 35 depicts the preferredproperty settings for the Image File Source.

Live Differencing

A live differencing routine is illustrated in FIG. 36, and is used tostream live differencing video on the HMI and to capture image stillsthat will be processed as cumulative differential images, as will bediscussed in greater detail herein below. The first three steps orfunctions include the VideoSource camera capture, Resize, and ColorSpace Conversion functions discussed previously. The output from theColor Space Converter is fed to a Splitter function, which splits thevideo stream into multiple separate output video streams of the samecontent. One output video stream is an input to an Image File Rendererfunction and another output video stream is an input to an AbsoluteDifference function.

The Image File Renderer is used to create one or more single image filestaken from the video stream, and supports the following file formats:Bitmap (*.bmp), JPEG (*.jpg), TIFF (*.tif) and PNG (*.png). Incomingimages from the video stream can be saved to a directory or, the filtermay use the trigger mode wherein an image file can be saved on eachtrigger event. The preferred output file properties are shown in thedialog box of FIG. 37.

The Absolute Difference function is a filter that accepts unprocessedvideo from the Splitter function and the saved image file from an ImageFile Source, and calculates the absolute values of the pixel differencesof the two input images. The Image File Source function is used tooutput the saved or base image file to an input of an AbsoluteDifference function downstream of the Splitter function. The preferredproperties are depicted in the dialog box of FIG. 38.

Output from the Absolute Difference function is accepted downstream by aMonadic Arithmetic filter that is used to modify pixel channels of acurrent image frame being processed using one of several arithmeticoperations. As shown in FIG. 37 of the properties dialog, a multiplyfilter with a scalar of 20 is specified for application to the image. Asan example, an addition operation using a scale value of 10 wouldincrease all channel values of all pixels by 10, thereby providing abrighter resulting image wherein 0=black and 255=white.

Output from the Monadic Arithmetic function is accepted as input by aLinear Filter function, which convolves the frames of the current videostream using a predefined linear filter kernel. The filter supportsseveral filter kernels and combinations of Sobel or Prewitt kernelsincluding Gauss, High pass, Laplace, Sobel and Prewitt Matrices of sizes3×3 or 5×5. The Linear Filter may thus provide edge detection,smoothing, Gaussian noise reduction, contrast enhancement, and the like.Preferred properties of the Linear Filter are depicted in thecorresponding dialog box of FIG. 37.

Output from the Linear Filter function is accepted as input by an ImageGrabber having the preferred output file properties depicted in thecorresponding dialog box of FIG. 37. The output from the Image Grabberis communicated to the Video Renderer discussed previously.

Absolute Differencing

Referring now to the flow chart of FIG. 39, an absolute differencingroutine 600 is illustrated and is preferably applied to all of thecameras over a preferred six predetermined test values. After completionof the various computer routines described above, at step 602 the pixelvalues of a first image, or image 1, of the preferred six images aredigitally subtracted (i.e. absolute difference), pixel for correspondingpixel, from the pixel values of a second image, or image 2, of thepreferred six images. The resultant differential is stored as image A.If image 1 is a baseline image captured while the object is unstressedor subjected to a “zero” value test level, then image 1 will likely besubstantially relatively dark, i.e. registering pixel values closer to 0than to 255 on the grayscale. If image 2 is an image captured while theobject is stressed to some non-zero test level value, then image 2 willexhibit some relatively light areas in the presence of anomalies,registering pixel values progressively away from 0. Again, at step 604,the pixel values of image 3 are digitally subtracted (i.e. absolutedifference), pixel for corresponding pixel, from the pixel values ofimage 4. The resultant differential is stored as image B. Likewise, atstep 606, the pixel values of image 5 are digitally subtracted (i.e.absolute difference), pixel for corresponding pixel, from the pixelvalues of image 6. The resultant differential is stored as image C.Basically, this routine results in differential images A, B, and C thatare essentially “spaced” apart from one another along the range of testlevels.

Steps 602 through 606 are preferably carried out using an AbsoluteDifference routine of MontiVision that is depicted by the MontiVisionscreen shot of FIG. 40. FIG. 40 depicts an Absolute Difference functionof the first of the several pairs of images, and corresponds directly tostep 602. Here, an Absolute Difference function accepts output from 1)an “Image File Source 1” function that presents a second image of a pairof images saved according to the Source 1 filter properties dialog ofFIG. 41, and from 2) an “Image File Source 2” function that presents apreceding first image of the pair of images saved according to the ImageFile Source 2 filter properties dialog box of FIG. 41. The AbsoluteDifference filter accepts the images from the saved image files of theImage File Sources, and calculates the absolute values of the pixeldifferences of the two input images, which output is accepted as inputto the Image File Renderer discussed previously and whose preferredoutput filter properties are depicted in the corresponding dialog ofFIG. 41, including the file name “Result”. Moreover, FIG. 40 is alsoexemplary of steps 604 and 606. Those of ordinary skill in the art willrecognize that the absolute differencing routine may contain more orless than the steps described herein to produce an absolute differencedimage, and that the filenames are arbitrary and may be different fromthose used herein.

Alternative Absolute Differencing

Referring now to the flow chart of FIG. 39A, an alternative absolutedifferencing routine 600′ is illustrated and is preferably applied toall of the cameras over four, instead of six, predetermined test values.At step 602′ the pixel values of a first image, or image 1, of the fourimages are digitally subtracted, pixel for corresponding pixel, from thepixel values of a second image, or image 2, of the four images. Theresultant differential is stored as image A′. At step 604′, the pixelvalues of image 2 are digitally subtracted, pixel for correspondingpixel, from the pixel values of a third image, or image 3, of the fourimages. The resultant differential is stored as image B′. Likewise, atstep 606′, the pixel values of image 3 are digitally subtracted, pixelfor corresponding pixel, from the pixel values of a fourth image, orimage 4, of the four images. The resultant differential is stored asimage C′. Basically, this routine results in differential images A′, B′,and C′ that are essentially “adjacent” one another along the range oftest levels.

Cumulative Differential Imaging

Referring to the flow charts of FIGS. 39 and 39A, at step 608 the pixelvalues of the differential images (images A, B, and C or A′, B′, and C′)are added, pixel for corresponding pixel, to produce a raw cumulativedifferential image (CDI) shown as image D or D′. This step, among otherthings, effectively integrates or stacks the appearance of anomaliesfrom different portions of the test range, because some anomalies mayappear in one portion of a test range, but not another. The nature ofnon-destructive testing in general, and in deformation specifically, issuch that some anomalies may appear over certain portions of the testrange and disappear over others. Accordingly, stacking the images toprovide the raw CDI yields one comprehensive, “show-all” image foranalyzing quality of the test object.

FIG. 42 depicts the cumulative differential step 608 of FIG. 39,preferably automatically carried out by MontiVision. A first DyadicArithmetic function accepts input from 1) an “Image File Source 0001”,which includes the preferred file source properties in the correspondingdialog of FIG. 43 and which corresponds to image A of the flow chart ofFIG. 39, and from 2) an “Image File Source”, which includes thepreferred file source properties in the corresponding dialog of FIG. 43which corresponds to image B of the flow chart of FIG. 39. The DyadicArithmetic filter property dialog of FIG. 34 shows that the operation isaddition. A second Dyadic Arithmetic function accepts output from 1) thefirst Dyadic Arithmetic operation and from 2) an “Image File Source 1”,which includes the preferred file source properties of the correspondingdialog of FIG. 43 which corresponds to image C of the flow chart of FIG.39. The Dyadic Arithmetic 1 filter property dialog of FIG. 44 shows thatthe operation is addition.

Referring again to FIG. 39, the raw CDI is preferably further processed,wherein the three sets of differenced pairs are added together,brightened, smoothed, and inverted, to produce a resultant CDI thatrenders anomalies more visible to the human eye. Accordingly, in step610, the raw CDI is brightened so as to be visible to the human eye. Inother words, the pixel values of the raw CDI are increased. In step 612,the now brightened CDI is smoothed to reduce graininess or noise andotherwise increase image aesthetics. In step 614, the brightened andsmoothed CDI is inverted so as to show relatively dark anomalies againsta relatively lighter non-anomalous background of the object. As usedherein, the term “invert” means that the pixel values are adjusted suchthat a 0 pixel value becomes a 255 pixel value, vice-versa, and a 1pixel value becomes a 254 pixel value, vice-versa, and so-on. In otherwords, to “invert” an image means to make a “negative” of the image.

FIG. 42 corresponds to steps 608 through 614 of FIG. 39 and the stepstherein are preferably used to produce the resultant CDI from thepreferably three sets of differenced pairs. A Monadic Arithmeticoperation is performed on the output from the second Dyadic Arithmeticfunction so as to multiply the output by a preferred scalar of 25 to“brighten” the image. Then, a Gaussian 3×3 linear filter is preferablyapplied to the output from the Monadic Arithmetic function as shown bythe Linear Filter 1 function and its corresponding filter propertiesdialog of FIG. 44 to “smooth” the image. The output from the LinearFilter is then inverted in grayscale as shown by the Inverse function.Finally, the inverted image is accepted as input to the Image FileRenderer discussed previously and whose preferred output filterproperties are depicted in the corresponding dialog of FIG. 43,including the exemplary file name Final. The output is a final orresultant CDI, with relatively dark anomalies against a relatively lightnon-anomalous background. Those of ordinary skill in the art willrecognize that the CDI routine may contain more or less than the stepsdescribed herein to produce a CDI and/or resultant CDI.

Enhanced CDI

Referring now to the flow chart of FIG. 45, once the resultant CDI hasbeen produced it may be desirable to further improve the visualappearance of the resultant CDI by applying an enhancement routine 618.As shown, one or both of a Topography filter function 620 and aSegmentation filter function 622 are applied to the resultant CDI.

The enhancement routine is also depicted in the MontiVision screen shotof FIG. 46. An Image File Source function is used to access theautomatically generated “Final” file from the previously described CDIroutine and displays the object image as having black or dark anomaliesagainst a relatively light or grey background, as shown in theproperties dialog box of FIG. 47.

Next, the Topography filter automatically generates a topography mapfrom the current video frame received from the Image File Source so asto limit the number of output grey (or color) levels. In other words,topographically filtering means to selectively filter out certaingrayscale (or colorscale) image gradations to effectively reduce imagenoise and present a clearer image. Using the Topography filter, theresultant CDI video frame is preferably downsampled and upsampled usinga gaussian 5×5 filter kernel up to a factor of 16 as shown in FIG. 47.The topographically filtered output goes to an input of a Color SpaceConverter, as described previously, to convert between different colorspaces and thereby connect different MontiVision modules that do notsupport each other's color space. In this case, the Color SpaceConverter output connects to a Segmentation filter used for imagesegmentation.

Segmentation is basically an automatic conversion from grayscale toblack and white, and is a preferred pre-processing step for a downstreamautomatic blob detection function. As shown in the properties dialog boxof FIG. 47, manual thresholding is chosen, for example, at a value of10, and all color channels are specified for the segmentation. Those ofordinary skill in the art will recognize that the particular settingsand values chosen herein may be varied and adjusted depending upon theparticular application involved. After the image is segmented, it isprocessed by a Monadic Arithmetic filter that is used to modify pixelchannels of the current image frame being processed using one of severalarithmetic operations. As shown in FIG. 47 of the properties dialog, amultiply filter with a scalar of 1 is specified for application to theimage.

Finally, the output from the Monadic step is saved using an Image FileRender function specifying a default file name of “Capture” as shown inthe properties dialog of FIG. 48. Those of ordinary skill in the artwill recognize that the enhanced CDI routine may contain more or lessthan the steps described herein to produce an enhanced CDI.

Analyzed CDI

Referring now to the flow chart of FIG. 49, once the now enhanced CDIhas been produced it may be desirable to analyze the enhanced CDI byapplying an analysis routine 626 to effectively identify and quantifyanomalies in the enhanced CDI to produce an analyzed CDI. As shown, oneor both of an automatic Blob Counter function 628 and an automatic BlobFinder function 630 are applied to the enhanced CDI from the previouslydescribed enhancement routine.

The analysis routine is also depicted in the MontiVision screen shot ofFIG. 50. An Image File Source function is called to output thepreviously enhanced CDI, which is saved with an exemplary file name ofFilter1_(—)000001.bmp. A Color Space Converter converts the enhancedimage for use by a downstream tool, Select Mediatype, which determinesthe type of media that should be used for a filter connection to adownstream Blob Counter. The Select Mediatype is not a videotransformation filter, but rather, is used to set a connection betweentwo filters to a specific media type, e.g. RGB 24, YUV, or the like.Many filter functions may support more than one media type as inputs andoutputs. When two relatively upstream filters are connected, they usethe first media type that is acceptable by, or common to, both filters.But sometimes that common media type is not compatible for otherdownstream filters, such as the downstream Blob Counter in thissituation. In this case, the Select Mediatype filter is used to set theconnection to the right media type. The Select Mediatype filter istransparent for all stream data and transports the data with a minimumdelay, without loss of performance.

The Blob Counter is basically a filter to automatically detect and tocount all blobs within a given image or video stream. The blobs arerepresentative of anomalies of the tested object and may, for example,be black or dark objects or contours against a white or lightbackground, or vice-versa. One filter excludes all blobs outside aminimum and maximum size, and the second filter excludes all blobs whoseseven “hu invariants” are outside minimum and maximum values. Huinvariants are basically invariants to the scale, rotation, andreflection of an image, except for the seventh hu invariant, whose signis changed by reflection. As shown in the Blob Counter properties dialogbox of FIG. 51, the “list” contour retrieval is chosen to arrange allblobs in one list and contour drawing is enabled, an approximate contouraccuracy of 0.2 is chosen for contour improvement to reduce contourcomplexity, and blob contour properties evaluation is enabled. As shownin the contour filter tab of the Blob Counter properties dialog of FIG.52, the contour filtering is enabled wherein contour sizes of between 0and 10,000 pixels in width and height are selected. As also shown in thepre-/postprocessing tab of the Blob Counter properties dialog of FIG.53, preprocessing segmentation threshold of 128 of 255 is specified.Also edge detection is disabled and only dark blobs are to be found.

Referring again to FIG. 50, the output of the Blob Counter is acceptedas input by a Blob Finder filter, which automatically calculates one ormore blob characteristics such as orientation or angle, perimeter, area,minimum bounding rectangle, upright bounding rectangle, spatial andcentral moments, and hu invariants. Additionally, the Blob Finder filtermay calculate a convex hull for the blob or reduces contour complexitywith an approximation routine. The Blob Counter and Finder arepreferably used together to optimize blob analysis. As shown in theproperties dialog box of FIG. 51, the “list” contour retrieval ischosen, an approximate contour accuracy of 0.2 is chosen for contourimprovement, contour moments are used as a base for calculation ofposition and orientation or angle, and the video output includes aminimum bounding rectangle and an upright bounding rectangle. As alsoshown in the contour filter tab of the Blob Finder properties dialogbox, the contour filtering is enabled wherein contour sizes of, forexample, between 0 and 10,000 pixels in width and height are selected.As also shown in the pre-/postprocessing tab of the Blob Counterproperties dialog of FIG. 53, preprocessing segmentation threshold of128 of 255 is specified. Also edge detection is disabled and only darkblobs are to be found and automatic region of interest (ROI) is selectedfor postprocessing.

Referring again to FIG. 50, an Image Grabber function is called toaccept output from the Blob Finder to capture a snapshot output in abitmap (*.bmp) format with a file name of “Filter2_(—)000001” as shownin FIG. 54, which depicts the preferred file properties of the imagegrabber. Finally, a Null Renderer function is called to terminateimagery that does not need to be displayed, but that cannot be leftunterminated. Those of ordinary skill in the art will recognize that theanalyzed CDI routine may contain more or less than the steps describedherein to produce an analyzed CDI.

Overlaid CDI

Referring now to the flow chart of FIG. 55, once the resultant CDI hasbeen produced it may be desirable to further improve the visualappearance of the resultant CDI by applying an overlay routine 634,wherein the resultant CDI is enhanced and analyzed and then overlaid ona baseline image of the test object to illustrate where the anomaliesare in relation to the baseline image of the test object. The routine634 includes similar steps as previously discussed with regard to FIGS.45 through 54, with a few exceptions to enable a clear overlay of theenhanced and analyzed image over a baseline image. FIG. 56 is aMontiVision screen shot that corresponds to the flow chart of FIG. 55.

As shown in FIG. 55, a Topography filter step 636 is applied and isidentical to that previously described, except that the image outputfrom the Topography filter step is inverted as represented by step 637and as shown in the Topography properties dialog box of FIG. 57. It mayalso be recognized that the topographically filtered image is invertedbefore the Segmentation filter is applied as shown by step 638 in FIG.55. Also, as shown in a filter tab of a Segmentation properties dialogbox, the binarization manual threshold is set to 230, as opposed to 10,to reflect the fact that the topographic output has been inverted.

Next, a Blob Counter function 640 and Blob Finder function 642 aresomewhat different from that previously discussed above. As shown inproperties dialog boxes of FIG. 58, the Blob Finder output does notinclude bounding rectangles, and the blob contours are not to be drawn.As shown in the filter tabs of the dialog boxes of FIG. 59, contourfiltering is enabled with contour sizes of, for example, between 0 and1,000 (instead of 10,000) pixels in width and height are selected.Finally, only bright (instead of dark) blobs are to be found, reflectingthe inverted status of the image, as shown in the pre-/postprocessingtab of the properties dialog boxes of FIG. 60.

Referring to FIG. 56, a ColorTwist function is applied to the BlobFinder output to convert one or more of three color channels accordingto a 4×4 matrix specified as shown by the colortwist properties dialogbox in FIG. 61. As discussed previously with respect to the imagefunction touchbutton with reference to FIG. 14, the ColorTwist functionpreferably changes the color of the anomalies from dark or black toyellow. As depicted by step 644 of the flow chart of FIG. 55, theinverted analyzed image is overlaid on the baseline image with a digitaldyadic logical “OR” function, as also depicted in the filter tab of theDyadic Logic properties dialog box of FIG. 61. Before applying a ColorSpace Converter function, the baseline image is called from the savedimage file ImageA-000001.bmp from the Image File Source 2 function fromthe Live Differencing routine described previously, as shown in theproperties dialog of FIG. 62. Finally, the output from the logical ORfunction is saved using the Image File Renderer with the propertiesshown in FIG. 61. Those of ordinary skill in the art will recognize thatthe overlay CDI routine may contain more or less than the stepsdescribed herein to produce an overlaid CDI.

DVS Database

FIG. 63 is a block diagram of a software relationship 418 betweendifferent tables of one of the databases 404 of FIG. 12 with the DVS HMI402 of FIG. 12, wherein the tables are saved in a tables directorywithin a DVS database in an SQL Server Enterprise Manager. The DVSdatabase includes the following tables with the listed characteristicsor data: dat_ParamsSystem 420 including system default settings;dat_Users 422 including personnel data; dat_SystemLog 424 includingsystem event descriptions; dat_TestSettings 426 including machine setupdata per tire test; dat_TestLog 428 including general tire test data;dat_TestResults 430 including tire anomaly data; dat_TireProfile 432including tire profile data; and may further include datParameters (notshown) which may be used as a dummy table. As used herein, the term datais interchangeable with the term characteristic.

As shown below in Table 1, the dat_ParamsSystem table contains defaultvacuum, file management, dome, display, and mode settings.VacuumSetpoint1 and 2 are the default limits for a given Tire Profile. Auser can specify other limits within a Tire Profile as long as they donot exceed the VacuumMax or Min values.

TABLE 1 Data Column Name Type Length Description VacuumMax real 4Maximum system vacuum VacuumMin real 4 Minimum system vacuumVacuumSetPoint1 real 4 Maximum default vacuum for differencing processVacuumSetPoint2 real 4 Minimum default vacuum for differencing processArchivePath char 10 File path for archiving differencing imagesFilenameTemplate char 10 Template for differencing image file names,with typical syntax of: TireProfile name TestID- Sector.bmp) TestConfigint 4 Display type (Raw, Enhanced, Analyzed); only applicable inauto-detect mode. DomeSettlingTime int 4 Time between dome decouplingand start of vacuum cycle. AutoDetectEnabled char 1 1: auto-detect modeenabled; 0: not enabled

As shown below in Table 2, the dat_Users table contains the names,passwords, and access level of users.

TABLE 2 Data Column Name Type Length Description Name char 30 Personsname (First and last) Password char 10 Persons password AccessLevel int4 Level (operator, maint., supervisor, administrator)

As shown below in Table 3, the dat_SystemLog contains a log of systemevents. All messages, warnings, and faults are saved to this table. Amessage is a statement regarding normal operation of the system. Awarning alerts the user to a non-critical system/process issue. A faultalerts a user to a critical issue that must be attended to immediatelyin order to proceed further.

TABLE 3 Data Column Name Type Length Description Severity int 4 Eventtype (1: Message, 2: Warning, 3: Fault) Description char 40 EventDateTime datetime 8 Date/Time event occurred and was logged

As shown below in Table 4, the dat_TestSettings table containsinformation regarding the machine setup and differencing analysisparameters of each tire tested.

TABLE 4 Data Column Name Type Length Description ID bigint 4 Incrementalrecord number. Always unique. TestID bigint 4 Reference to TestID indat_TestLog TestArea int 4 Area of tire tested (i.e. Crown, DOT, LowerBead) CameraGain int 4 Gain of camera set in tire profile usedCameraExposure int 4 Exposure of camera set in tire profile usedCameraBrightness real 4 Brightness of camera set in tire profile usedCameraContrast real 4 Contrast of camera set in tire profile usedCameraGamma real 4 Gamma of camera set in tire profile used CameraFocusreal 4 Focus of camera set in tire profile used CameraIris real 4 Irisof camera set in tire profile used VacuumMax real 4 Maximum vacuum setin tire profile used VacuumMin real 4 Minimum vacuum set in tire profileused Pos1Vert real 4 Vertical Position 1 set in tire profile usedPos1VertClr real 4 Vertical Clear Position 1 set in tire profile usedPos1Horz real 4 Horz. Position 1 set in tire profile used Pos1HorzClrreal 4 Horz. Clear Position 1 set in tire profile used Pos1Tilt real 4Tilt Position 1 set in tire profile used Pos1TiltClr real 4 Tilt ClearPosition 1 set in tire profile used Pos1Sectors int 4 Sectors forPosition 1 set in tire profile used Pos2Vert real 4 Vertical Position 2set in tire profile used Pos2VertClr real 4 Vertical Clear Position 2set in tire profile used Pos2Horz real 4 Horz. Position 2 set in tireprofile used Pos2HorzClr real 4 Horz. Clear Position 2 set in tireprofile used Pos2Tilt real 4 Tilt Position 2 set in tire profile usedPos2TiltClr real 4 Tilt Clear Position 2 set in tire profile usedPos2Sectors int 4 Sectors for Position 2 set in tire profile usedPos3Vert real 4 Vertical Position 3 set in tire profile used Pos3VertClrreal 4 Vertical Clear Position 3 set in tire profile used Pos3Horz real4 Horz. Position 3 set in tire profile used Pos3HorzClr real 4 Horz.Clear Position 3 set in tire profile used Pos3Tilt real 4 Tilt Position3 set in tire profile used Pos3TiltClr real 4 Tilt Clear Position 3 setin tire profile used Pos3Sectors int 4 Sectors for Position 3 set intire profile used Pos4Vert real 4 Vertical Position 4 set in tireprofile used Pos4VertClr real 4 Vertical Clear Position 4 set in tireprofile used Pos4Horz real 4 Horz. Position 4 set in tire profile usedPos4HorzClr real 4 Horz. Clear Position 4 set in tire profile usedPos4Tilt real 4 Tilt Position 4 set in tire profile used Pos4TiltClrreal 4 Tilt Clear Position 4 set in tire profile used Pos4Sectors int 4Sectors for Position 4 set in tire profile used Pos5Vert real 4 VerticalPosition 5 set in tire profile used Pos5VertClr real 4 Vertical ClearPosition 5 set in tire profile used Pos5Horz real 4 Horz. Position 5 setin tire profile used Pos5HorzClr real 4 Horz. Clear Position 5 set intire profile used Pos5Tilt real 4 Tilt Position 5 set in tire profileused Pos5TiltClr real 4 Tilt Clear Position 5 set in tire profile usedPos5Sectors int 4 Sectors for Position 5 set in tire profile usedPos6Vert real 4 Vertical Position 6 set in tire profile used Pos6VertClrreal 4 Vertical Clear Position 6 set in tire profile used Pos6Horz real4 Horz. Position 6 set in tire profile used Pos6HorzClr real 4 Horz.Clear Position 6 set in tire profile used Pos6Tilt real 4 Tilt Position6 set in tire profile used Pos6TiltClr real 4 Tilt Clear Position 6 setin tire profile used Pos6Sectors int 4 Sectors for Position 6 set intire profile used MinBlobWidth real 4 Minimum blob width used forauto-detect MaxBlobWidth real 4 Maximum blob width used for auto-detectMinBlobHeight real 4 Minimum blob height used for auto-detectMaxBlobHeight real 4 Maximum blob height used for auto-detectFilterLevel int 4 Filter level used for auto- detect DomeSettlingTimeint 4 Time b/w dome decoupling and vacuum cycle start.

As shown below in Table 5, the dat_TestLog table stores generalinformation regarding a tire test. A unique identification (TestID) isgenerated for each test with an incremental record number. Other tablesthat store test details then reference this unique identification.

TABLE 5 Column Name Data Type Length Description TestID bigInt 8Incremental record number. Always unique. CustomerName char 20 Customerthat the tire was tested for Tester char 20 Name of Tester/OperatorManufacturer char 20 Name of tire manufacturer (i.e. ACME) Model Char 20Model of tire (i.e. Ruffrider) [Size] Char 20 Size of tire (i.e.P235/65R14) DOT Char 15 DOT number on tire New Char 1 Y for Yes or N forNo TireProfile Char 20 Name of tire profile used for test TestResult Int4 Pass/Fail AutoDetectEnabled Real 4 Logs whether system was inauto-detect mode or not DateTimeStamp Datetime 8 Date and Time of test

As shown below in Table 6, the dat_TestResults table stores detailsabout anomalies found in a certain area and sector of a tire. The TestIdvalue provides the reference to the dat_TestLog table.

TABLE 6 Column Name Data Type Length Description ID bigInt 8 Incrementalrecord number. Always unique. TestID bigInt 8 Reference to TestID indat_TestLog TestArea Int 4 Area of tire tested (i.e. Crown, DOT, LowerBead) Sector Int 4 Tire sector Anomalies Int 4 Number of anomalies intire area and sector SizeOfLgAnom Real 4 Size of largest anomalyextrapolated from image in tire area and sector

As shown below in Table 7, the dat_TireProfile table contains tireprofiles. Tire profiles describe and define characteristics of the tirethat are then used in the tire test process.

TABLE 7 Column Name Data Type Length Description Name char 30 Operatordefined name for tire profile CameraGain int 4 Gain of camera set intire profile used CameraExposure int 4 Exposure of camera set in tireprofile used CameraBrightness real 4 Brightness of camera set in tireprofile used CameraContrast real 4 Contrast of camera set in tireprofile used CameraGamma real 4 Gamma of camera set in tire profile usedCameraFocus real 4 Focus of camera set in tire profile used CameraIrisreal 4 Iris of camera set in tire profile used VacuumMax real 4 Maximumvacuum set in tire profile used VacuumMin real 4 Minimum vacuum set intire profile used Pos1Vert real 4 Vertical Position 1 set in tireprofile used Pos1VertClr real 4 Vertical Clear Position 1 set in tireprofile used Pos1Horz real 4 Horz. Position 1 set in tire profile usedPos1HorzClr real 4 Horz. Clear Position 1 set in tire profile usedPos1Tilt real 4 Tilt Position 1 set in tire profile used Pos1TiltClrreal 4 Tilt Clear Position 1 set in tire profile used Pos1Sectors int 4Sectors for Position 1 set in tire profile used Pos2Vert real 4 VerticalPosition 2 set in tire profile used Pos2VertClr real 4 Vertical ClearPosition 2 set in tire profile used Pos2Horz real 4 Horz. Position 2 setin tire profile used Pos2HorzClr real 4 Horz. Clear Position 2 set intire profile used Pos2Tilt real 4 Tilt Position 2 set in tire profileused Pos2TiltClr real 4 Tilt Clear Position 2 set in tire profile usedPos2Sectors int 4 Sectors for Position 2 set in tire profile usedPos3Vert real 4 Vertical Position 3 set in tire profile used Pos3VertClrreal 4 Vertical Clear Position 3 set in tire profile used Pos3Horz real4 Horz. Position 3 set in tire profile used Pos3HorzClr real 4 Horz.Clear Position 3 set in tire profile used Pos3Tilt real 4 Tilt Position3 set in tire profile used Pos3TiltClr real 4 Tilt Clear Position 3 setin tire profile used Pos3Sectors int 4 Sectors for Position 3 set intire profile used Pos4Vert real 4 Vertical Position 4 set in tireprofile used Pos4VertClr real 4 Vertical Clear Position 4 set in tireprofile used Pos4Horz real 4 Horz. Position 4 set in tire profile usedPos4HorzClr real 4 Horz. Clear Position 4 set in tire profile usedPos4Tilt real 4 Tilt Position 4 set in tire profile used Pos4TiltClrreal 4 Tilt Clear Position 4 set in tire profile used Pos4Sectors int 4Sectors for Position 4 set in tire profile used Pos5Vert real 4 VerticalPosition 5 set in tire profile used Pos5VertClr real 4 Vertical ClearPosition 5 set in tire profile used Pos5Horz real 4 Horz. Position 5 setin tire profile used Pos5HorzClr real 4 Horz. Clear Position 5 set intire profile used Pos5Tilt real 4 Tilt Position 5 set in tire profileused Pos5TiltClr real 4 Tilt Clear Position 5 set in tire profile usedPos5Sectors int 4 Sectors for Position 5 set in tire profile usedPos6Vert real 4 Vertical Position 6 set in tire profile used Pos6VertClrreal 4 Vertical Clear Position 6 set in tire profile used Pos6Horz real4 Horz. Position 6 set in tire profile used Pos6HorzClr real 4 Horz.Clear Position 6 set in tire profile used Pos6Tilt real 4 Tilt Position6 set in tire profile used Pos6TiltClr real 4 Tilt Clear Position 6 setin tire profile used Pos6Sectors int 4 Sectors for Position 6 set intire profile used TireManufacturer real 4 Name of tire manufacturer(i.e. ACME) TireModel real 4 Model of tire (i.e. Ruffrider) TireSizereal 4 Size of tire (i.e. P235/65R14) Customer real 4 Customer that thetire was tested for NewTire int 4 Y for Yes or N for No MinBlobWidthreal 4 Minimum blob width used for auto-detect MaxBlobWidth real 4Maximum blob width used for auto-detect MinBlobHeight real 4 Minimumblob height used for auto-detect MaxBlobHeight real 4 Maximum blobheight used for auto-detect

Substrate Data Collector HMI

FIGS. 64 through 68 illustrate some of the functionality of a substratedata collector through several GUI screen shots. FIG. 64 illustrates amain screen that provides a user with the ability to move files to anarchive directory, reprint or edit existing tire reports, and begin atire report process. The program may be closed down by pressing theClose button.

The Move Files button allows a user to move CDI's from a local directoryto an archive directory, after a report has been created. Once a userpresses the button, a Move Files screen is displayed as shown in FIG.65. If the directory containing the CDI's is known, then a user can typein the directory in the Source Folder textbox and press GOTO DIRECTORY.Otherwise, a user can find the folder by browsing through the systemfolders, wherein a BROWSE button loads a browse folders dialogue box notunlike what Windows® users are accustomed to. Once a particular folderis selected, the listbox will be automatically populated with the bitmapimages found in that folder. The user selects the files that need to bemoved. Once all of the files have been selected, the MOVE button willbegin the transfer process. The user will be asked via a popup dialogbox to verify whether or not to make the move because the original fileswill be deleted. If YES on the dialog box is pressed, then the programwill verify that the files follow the correct name format, so the filescan be copied to the correct location, and if so will begin the transferprocess. After the files have been moved, the listbox will be updated toreflect that the files no longer exist in the current directory. TheCLOSE button may be pressed to exit this screen.

The REPRINT button allows the user to print past tire reports. Once theREPRINT button has been pressed, a popup dialog box will appearprompting the user to enter the Tire and Test Number for the tire reportto be printed. After the Tire and Test Number have been entered, theuser may press an OK button to continue or a CANCEL button to exit. Oncethe OK button has been pressed the tire report will be printed if theTire and Test number entered are valid. It is contemplated that thesoftware could include an edit function wherein existing reports couldbe retrieved, data therein edited, and re-saved.

To begin a tire report a user starts with data fields located in aGeneral section of the screen. Fields containing drop-down menus can beused in one of two ways: a selection can be made from a drop-down menuor the user can type in the information if it does not exist in thedrop-down menu. The preferred sequence for filling out the General formis as follows: 1) Select or type in the purpose of the test (i.e. R&D,Sales); 2) Select a customer name or enter a new one; 3) Select acustomer number (menu items are dependent on customer name selected) orenter a new one; 4) Select a case number (menu items are dependent oncustomer number selected) or enter a new one; 5) Select a U.S.Department of Transportation (DOT) number (menu items are dependent oncase number selected) or enter a new one; 6) Select a unique tire ID iftesting a previously tested tire (menu items are dependent on casenumber selected), enter a new one (if unique marking exists and is a newtest tire), or leave blank (if new test tire and no unique markingexist, wherein default id will be tire number). This field is used todistinguish tires having the same DOT number; 7) Select your name fromthe Tester drop-down menu or enter it if it does not exist; 8) Selectthe tire type, tire location, and the test type; 9) Select all of thetire areas that were tested; 10) Press next. If all of the data has notbeen filled out the user will be asked to complete the form in full.

Referring now to FIG. 66, the Tire Characteristics screen is used torecord characteristics or data about the tire like make, model, size,stiffness, whether new or used or clean or dirty, and environmentalaspects of the tire test such as temperature and relative humidity, andnotes fields. Under the title “Tire Characteristics” appears thefilename syntax or scheme to be used in order for the Move Filesfunction to work. If the user is creating a report on a previouslytested tire the manufacturer, model, and size will automatically befilled out. If it is a new tire then the manufacturer, model, and sizeshould be selected or filled out in the order just stated. The otherfields can be filled in any order. When all the information has beenentered the user can press the NEXT button to continue or the PREVIOUSbutton to go back to the previous screen.

Referring now to FIG. 67, a Test Results screen is used to recordcertain data or characteristics of the tire testing such as the date,time, quantitative and qualitative anomaly details, and filterparameters (if tire was tested using the differencing process describedherein). The anomaly details may include the quantity of anomalies pertire sector, the area of smallest and largest anomalies per sector, andthe minimum and maximum heights and widths of the anomaly filter levelsused. The area, heights, and widths may be measured and/or presented inpixels, millimeters, and/or inches. As indicated on the screen shot bythe area under the title TEST RESULTS, a unique test results screen ispreferably provided for each of the different tire areas tested. Thevarious test results sections for any given tire may be as follows:inside bead, inside crown, inside DOT, outside bead, outside crown, andoutside DOT, all of which are particular areas of a tire known to thoseof ordinary skill in the art of tire testing. When all of theinformation for the current area is entered, the NEXT button willdisplay the next area to fill out. The tire areas requiring data dependon the areas checked in the General section. If all of the tire areasrequiring data are filled out, then the NEXT button will prompt the userto determine if each area of the tire tested was done with the samefixture setup or not, via popup dialog box. The PREVIOUS button willdisplay the previous test area or section.

Referring now to FIG. 68, a Test Fixture Parameters screen is used torecord machine settings used for the test. Machine settings aresynonymous with machine characteristics or machine data, and may includethe type of laser light source used, laser power in mW (milliwatts),laser angles, minimum and maximum vacuum test levels, and camera settingdetails such as camera exposure time, focus, focal length, iris, and thelike. If different test settings were used for different areas of thetire, then the NEXT button will take the user to the next area where thesame fields will need to be filled out. The various test fixtureparameter sections for any given tire may be as follows: inside bead,inside crown, inside DOT, outside bead, outside crown, and outside DOT.If all the fields for all test areas have been filled the save buttonwill be enabled. Pressing the SAVE button will prompt the user todetermine whether or not to continue with the saving process. If theuser clicks YES, then the data will be saved to the database and theuser will be prompted to determine whether or not to print the report.Once the user clicks yes or no to print the report the user will bebrought back to the General screen where the CDI's can be archived ormoved and another test report can be filled out.

Substrate Data Collector Database

FIG. 69 is a block diagram of a software relationship 434 betweendifferent tables of one of the databases 404 of FIG. 12 with theSubstrate Data Collector 406 of FIG. 12, wherein the tables are saved ina tables directory within a substrate data database in an SQL ServerEnterprise Manager. The substrate database includes the following tableswith the listed data: dat_ParamsCustomer 436 including customer data;dat_ParamsTires 438 including tire specifications; dat_ParamsTesters 440including personnel data; dat_TestFixtureSetup 442 including machinesetup data; dat_TestLog 444 including general tire test data;dat_TestResults 446 including tire anomaly details; and if desired,datParameters (not shown) which may be a dummy table. The substratedatabase may also include a reference, such as a filename, hyperlink, orthe like, to one or more images associated with the tested substrate.Finally, a dummy table may be used that includes known fields to checkthe connection between the DVS HMI 402 of FIG. 12 and SQL.

Referring to Table 8 below, the dat_ParamsCustomer table contains allthe customer information needed for the customer drop-down menus in theTire Data Collector interface. If a tire for a new customer is beingtested the tester will have to enter in the customer informationmanually, after which, the information will be saved for future use.

TABLE 8 Data Column Name Type Length Description ID Int 4 Incrementalrecord number. Always unique. CustomerName Char 40 Name of customer(i.e. Acme Co.) CustomerNumber Char 10 Customer Number (Defined by L-RAY ®) CaseNumber Char 20 Case Number (Defined by customer)

As shown in Table 9 below, the dat_ParamsTires table containsinformation regarding tires for the drop-down menus in the Tire dataCollector interface. If certain tire characteristics or parameters donot exist then the parameters will have to be manually entered in viathe Tire Data Collector interface and saved for future use.

TABLE 9 Data Column Name Type Length Description ID Int 4 Incrementalrecord number. Always unique. Manufacturer Char 20 Name of tiremanufacturer (i.e. ACME) Model Char 20 Model of tire (i.e. Ruffrider)[Size] Char 20 Size of tire (i.e. P235/65R14)

Referring to Table 10 below, the dat_ParamsTester table containspersonnel data or characteristics for those people testing tires andprovides the information for the Tester drop-down menu in the Tire DataCollector interface. Depending on the system a person may select theirname from a drop-down menu or they may have to swipe their badge and/orenter a password to login to the system. If a person does not exist inthe table they will have to be entered in manually via the operatorinterface.

TABLE 10 Data Column Name Type Length Description Tester Char 20 Name ofTester/Operator

As shown in Table 11 below, the dat_TestFixture table contains data orcharacteristics regarding the machine setup and differencing analysisparameters. The TestId field provides the reference to the dat_Logtable.

TABLE 11 Data Column Name Type Length Description ID bigInt 8Incremental record number. Always unique. TestID bigInt 8 Reference toTestID in dat_TestLog TestArea Int 4 Area of tire tested (i.e. Crown,DOT, Lower Bead) Focus Real 4 Number of turns clockwise orcounter-clockwise from focus Iris Real 4 Number of turns from closediris position FocalLen Real 4 Focal length of camera LaserType char 10Type of laser (i.e. Krypton, Lasr Diode) LaserPower Int 4 Power of laserlaserAngle Int 4 Angle of lasers Exposure Int 4 Exposure time of camerasDomeSettlingTime Int 4 Time between dome closing and test startingMinVacuum Real 4 Initial vacuum level for vacuum cycle MaxVacuum Real 4Maximum vacuum for vacuum cycle FilterLevel Int 4 Filter level used whenanalyzing a differenced image MinBlobWidth Real 4 Minimum blob (anomaly)width MaxBlobWidth Real 4 Maximum blob (anomaly) width MinBlobHeightReal 4 Minimum blob (anomaly) height MaxBlobHeight Real 4 Maximum blob(anomaly) height TireTestFixtureDesc1 Char 40 Note TireTestFixtureDesc2Char 40 Note TireTestFixtureDesc3 Char 40 Note TireTestFixtureDesc4 Char40 Note

Referring to Table 12 below, the dat_TestLog table stores general dataor characteristics regarding a tire test. A unique id (TestID) isgenerated for each test (incremental record number). Other tables thatstore test details then reference this id.

TABLE 12 Data Column Name Type Length Description TestID bigInt 8Incremental record number. Always unique. TireNumber bigInt 8 Each tiretested is assigned a unique, incremental, number. TestNumber Int 4 Eachtire is assigned a unique, incremental, number based on the number oftests performed (i.e. if tire number 7 was being tested for the thirdtime it would be assigned tire number 7 test number 3) CustomerNumberChar 10 Customer Number (Defined by L- RAY ®) CaseNumber char 20 CaseNumber (Defined by customer) Tester char 20 Name of Tester/OperatorTestType char 1 D for Differencing or S for Shearography TireType Char 1P for Passenger or T for Truck Manufacturer char 20 Name of tiremanufacturer (i.e. ACME) Model Char 20 Model of tire (i.e. Ruffrider)[Size] Char 20 Size of tire (i.e. P235/65R14) DOT Char 15 DOT number ontire TireNumDescr Char 20 Unique marking on tire that may exist todistinguish it from other tires TireLocation Char 10 Right/Left Front orRight/Left Rear or Unknown Used Char 1 Y for Yes or N for No CleanlinessChar 20 Acceptable or Dirty TireStiffness Int 4 Subjective value from 1to 5 regarding how stiff a tire is. Temperature Real 4 Temperature oftire Humidity Real 4 Humidity of air around tire SpreadSettling Int 4Time between spreading and testing Time TireCharDesc1 Char 40 NotesTireCharDesc2 Char 40 Notes TireCharDesc3 Char 40 Notes TireCharDesc4Char 40 Notes Purpose Char 25 Reason for test (i.e. R&D, Sales, etc.)DateTimeStamp Datetime 8 Date and Time of test

Referring to Table 13 below, the dat_TestResults table stores data orcharacteristics about the anomalies found in a certain area and sectorof a tire. The TestId value provides the reference to the dat_TestLogtable.

TABLE 13 Data Column Name Type Length Description ID bigInt 8Incremental record number. Always unique. TestID bigInt 8 Reference toTestID in dat_TestLog TestArea Int 4 Area of tire tested (i.e. Crown,DOT, Lower Bead) Sector Int 4 Tire sector Anomalies Int 4 Number ofanomalies in tire area and sector SizeOfLgAnom Real 4 Size of largestanomaly extrapolated from image in tire area and sector SizeOfSmAnomReal 4 Size of smallest anomaly extrapolated from image in tire area andsector PhysicalSizeOfLgAnom Real 4 Size of largest anomaly obtained fromcutting the tire and measuring the anomaly in tire area and sectorPhysicalSizeOfSmAnom Real 4 Size of smallest anomaly obtained fromcutting the tire and measuring the anomaly in tire area and sector

The order of execution or performance of the methods illustrated anddescribed herein is not essential, unless otherwise specified. That is,elements or steps of the methods may be performed in any order, unlessotherwise specified, and that the methods may include more or lesselements than those disclosed herein. For example, it is contemplatedthat executing or performing a particular element before,contemporaneously with, or after another element is within the scope ofthe invention.

As used in this specification and claims, the terms “for example,” “forinstance,” and “such as,” and the verbs “comprising,” “having,”“including,” and their other verb forms, when used in conjunction with alisting of one or more components or other items, are each to beconstrued as open-ended, meaning that that the listing is not to beconsidered as excluding other, additional components or items. Moreover,directional words such as top, bottom, upper, lower, radial,circumferential, axial, lateral, longitudinal, vertical, horizontal, andthe like are employed by way of description and not limitation. Otherterms are to be construed using their broadest reasonable meaning unlessthey are used in a context that requires a different interpretation.When introducing elements of the present invention or the embodiment(s)thereof, the articles “a,” “an,” “the,” and “said” are intended to meanthat there are one or more of the elements.

While the forms of the invention herein disclosed constitute presentlypreferred embodiments, many others are possible. It is not intendedherein to mention all of the possible equivalent forms or ramificationsof the invention. It is understood that the terms used herein are merelydescriptive rather than limiting and that various changes may be madewithout departing from the spirit or the scope of the invention. Forexample the number and type of lasers to be utilized can varysubstantially; and the software in the computer that is described hereincan be varied depending upon the changes in technology with respect tothe computer or computer devices and updates to the types of software orcustomer requirements.

1. A computer-readable medium carrying instructions for enabling atleast one processor to perform method steps of non-destructive testing,the method comprising: calculating differences between pixel values of aplurality of pairs of digital images captured as coherent light directlyreceived substantially as reflected straight from an object undergoingnon-destructive testing over a range of test levels; adding the pixelvalue differences of the plurality of pairs of digital images to yieldat least one cumulative differential image.
 2. The computer-readablemedium of claim 1, wherein the method further comprises the calculatingstep further including calculating differences between pixel values of afirst pair of at least two pairs of digital images and of a second pairof at least two pairs of digital images wherein the first and secondpairs have a digital image in common.
 3. The computer-readable medium ofclaim 1, wherein the method further comprises the calculating stepfurther including calculating differences between pixel values of afirst pair of at least two pairs of digital images and of a second pairof at least two pairs of digital images wherein the first pair has firstand second digital images and the second pair has third and fourthdigital images, such that the first and second pairs have no digitalimages in common.
 4. The computer-readable medium of claim 1, whereinthe method further comprises the calculating step further including:calculating differences between pixel values of a first, second, andthird pairs of at least three pairs of digital images; adding thedifferences of the first and second pairs of the at least three pairs ofdigital images to yield a first cumulative differential image; andadding pixel values of the first cumulative differential image to thedifferences of the third pair of the at least three pairs of digitalimages to yield at least one more cumulative differential image.
 5. Thecomputer-readable medium of claim 1, wherein the method furthercomprises: the capturing step including capturing the plurality ofdigital images of the object at predefined test levels of the range oftest levels; calculating differences between pixel values of a first,second, and third pairs of at least three pairs of digital images,wherein the first pair has first and second digital images, the secondpair has third and fourth digital images, and the third pair have fifthand sixth digital images, such that the first, second, and third pairshave no digital images in common; adding the differences of the firstand second pairs of the at least three pairs of digital images to yielda first cumulative differential image; and adding pixel values of thefirst cumulative differential image to the differences of the third pairof the at least three pairs of digital images to yield at least one morecumulative differential image.
 6. The computer-readable medium of claim1, wherein the method further comprises: brightening the at least onecumulative differential image; and smoothing the at least one cumulativedifferential image.
 7. The computer-readable medium of claim 1, whereinthe method further comprises: inverting the at least one cumulativedifferential image to yield at least one inverted image; topographicallyfiltering the at least one inverted image to yield at least onetopographically filtered image; and segment filtering the at least onetopographically filtered image to yield at least one enhanced image. 8.The computer-readable medium of claim 7, wherein the method furthercomprises: quantifying anomalies in the at least one enhanced image toyield at least one analyzed image.
 9. The computer-readable medium ofclaim 8, wherein the method further comprises the quantifying stepincluding applying at least one of an anomaly counter and an anomalyfinder process to the at least one enhanced image to yield at least oneanalyzed image.
 10. The computer-readable medium of claim 1 wherein themethod further comprises: topographically filtering the at least onecumulative differential image to yield at least one topographicallyfiltered image; segment filtering the at least one topographicallyfiltered image to yield at least one enhanced image; quantifyinganomalies in the at least one enhanced image to yield at least oneanalyzed image; and digitally overlaying at least one of the at leastone analyzed image and the at least one enhanced image on a baselineimage of the plurality of images.
 11. The computer-readable medium ofclaim 1, wherein the method further comprises at least one of thefollowing steps: a) simultaneously displaying a plurality of test setseach including at least one image of the object; and b) displaying aprint preview of at least one test set each including a plurality ofimages and to accept at least one of a title for the at least one testset and a description for each of the plurality of images.
 12. Thecomputer-readable medium of claim 1, wherein the method furthercomprises at least one of the following steps: a) displaying live imagescaptured by imaging equipment and to accept user input for at least oneof the following characteristics of the imaging equipment: gain,exposure, brightness, contrast, and gamma; b) accepting user input forat least one of the following characteristics of the imaging equipment:camera vertical position, camera horizontal position, and camera tilt.13. A method of creating a database of information from anon-destructive testing process of a plurality of objects, wherein themethod comprises: creating at least one database record for each of theplurality of objects, the at least one database record including thefollowing information: at least one object identifier; at least onereference to at least one digital image; and at least one anomalycharacteristic including at least one of anomaly quantity and anomalysize; and storing the at least one database record for subsequentaccess.
 14. The database created by the method of claim
 13. 15. Themethod of claim 13 further comprising: accessing a stored record of theat least one database record; and printing the stored record.
 16. Amachine readable output of a database record created by the method ofclaim
 15. 17. The method of claim 13 wherein the at least one anomalycharacteristic of anomaly size includes at least one of a measurement ofanomaly height, anomaly width, and anomaly area, wherein the measurementis in at least one of pixels, millimeters, and inches.
 18. The method ofclaim 13 wherein the at least one database record further includes atleast one of the following data: a) imaging data including at least oneof light source type, light source power level, light source position,focus setting, focal length, exposure time, filter setting, and irissetting; b) test level data including at least one of a minimum testlevel and a maximum test level; c) test environment data including atleast one of temperature, humidity, and settling time; d) test objectdata including at least one of manufacturer, model, size, used vs. newindication, cleanliness rating, stiffness rating; e) test result dataincluding at least one of test date, test time, quantity of anomalies,size of largest anomaly including at least one of height, weight, andarea, size of smallest anomaly including at least one of height, weight,and area; and f) general data including at least one of an indication oftest purpose, customer name, customer number, unique test objectidentification, operator name, and an indication of the area of theobject tested.